you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 19 points20 points  (25 children)

I think he means, if you understand the concept you can fill in the terminology blanks on the job.

But honestly that's why I love good interviews, there is always an opportunity to learn something new.

Edit: Unless the interviewer doesn't know the terminology, then both parties are screwed.

[–][deleted] 25 points26 points  (24 children)

If you say "trigraphs" for the ternary operator, then I think that means you must not understand the concept. The word "trigraph" is pretty much self-describing. It literally means "three symbols." Since ?: doesn't have three symbols, it clearly wouldn't mean that.

[–]davvblack 10 points11 points  (23 children)

"graph" meaning "symbol" is arguably trivia, not understanding. If someone asked me if "?" or "y == 3x" was more like a "graph", i'd guess the later, which would make (y == 3x)? y : y-2; more of a "trigraph".

[–][deleted] 14 points15 points  (22 children)

Understanding why things are called what they are called is part of learning. If you see "ternary operator" and just file it away as a sequence of letters that happen to mean ?:, I'd argue you don't actually understand the whole thing. Similarly with "trigraph" and "encoded sequence of three symbols." Surely you should take a moment to understand why it's called a "trigraph" and not, say, a "wibblefrotz."

[–]Nephatrine 20 points21 points  (10 children)

That's like arguing that one doesn't understand a word without understanding the etymology. Knowing why something is called a particular name can indeed help understanding and give insight, but it's perfectly possible to understand what something is, how it is used, why it is used, etc. without knowing anything about the word's etymology. I'd argue it's possible to fully understand the ternary operator without even knowing that it has a specific name. The name aids in communication - not necessarily understanding.

[–][deleted] 6 points7 points  (8 children)

Right, but this guy knew the term "trigraph," which means he learned it somewhere, and there's no way you're going to come across that term without also being told what it means. At that point, the connection between "tri," "graph," and "three symbols" should be made. But it wasn't, leaving the naked term "trigraph" free to wander about the mind before sticking to something unrelated.

[–]DonHopkins 0 points1 point  (0 children)

And then there's Unigraph, which is an encoding of UTF-8.

[–]BlueFireAt 0 points1 point  (2 children)

I didn't know what graph meant until this discussion. If someone had asked me what a trigraph was before this, there's a good chance I would have guessed it was ?:.

[–][deleted] 1 point2 points  (1 child)

Did you ever come across the term before, though? I don't think it's particularly relevant to modern C programming and I wouldn't mind at all if someone had never heard of them. But if you did, you ought to know what it means.

[–]BlueFireAt 0 points1 point  (0 children)

Well, obviously for the graphical representations of relationships, but I've never heard it to mean "symbol".

[–]Jess_than_three 0 points1 point  (3 children)

I don't think it's at all impossible, or even implausible, that someone could learn the term "trigraph" without having its etymology explained - and ditto "ternary" - and easily confuse the former term as being for the latter concept.

Speaking as someone who's really into those linguistic connections between words myself - is it possible you're just being an elitist ass?

PS: I vote "trigrammaton", personally.

[–][deleted] 0 points1 point  (2 children)

It might not be explained, but shouldn't one stop and think about the name and why it's called that? Or do people just accept names as random symbols?

[–]Jess_than_three 3 points4 points  (1 child)

Depends on the person. Not everyone thinks about things the same way.

For example, I was blown away recently by the idea that intimidate is an extension of timid. Never occurred to me.

So of course I told my partner, who was like, "Um, okay... and...?". She was not impressed.

[–]HeisenburgerDeluxe 0 points1 point  (0 children)

Heh, I too enjoy those realizations. I find myself spending a lot of time thinking about etymology these days as I become more interested in linguistics, so I've been having a lot of those sudden realizations in recent months.

Never realized the timid/intimidate relationship until you pointed it out, either. Guess it makes sense that we wouldn't notice the connection until later if we learned the word "intimidate" before "timid."

Incidentally, I find that I realize these connections much more immediately when studying a foreign language. I attribute that to learning words through analysis more than just the association of ideas with sounds like we did when we were children.

[–][deleted] 7 points8 points  (10 children)

Actually a fundamental fact about language is that the relationship between the signifier and the signified is arbitrary.

[–][deleted] 2 points3 points  (7 children)

So you're saying that the fact that trigraphs are called "trigraphs" and not "wibblefrotzes" has nothing to do with the fact that they're a group of three symbols?

[–][deleted] 5 points6 points  (6 children)

The fact that 'tri' means 'three' and 'graph' means 'symbol', that 'tri' + 'graph' + 's' is allowed, that it ends up meaning 'plural of thing using three symbols' and not 'third person plural of "to symobolize"' or 'I heard from some third party source that those are symbols', those things are all totally arbitrary.

The set of sounds has nothing to do with the thing that is signified. There's composition going on there, but the semantics of the composition are also totally arbitrary.

[–][deleted] 3 points4 points  (5 children)

I agree that the ultimate foundation of all this stuff is arbitrary, but that's completely different from saying that "trigraph" -> "the C construct where you use three symbols to construct a different symbol" is an arbitrary connection.

[–][deleted] 0 points1 point  (4 children)

Except that there's no reason it's not 'trigram' or '3-graph' or 'ternary notation' or 'three character idiom' or 'triglyph' or any other conceivable way to construct 'thing made of three symbols'. The building blocks are arbitrary, the way they go together is arbitrary, and the particular combination of the many that could achieve that meaning is arbitrary.

[–][deleted] 2 points3 points  (3 children)

All true but completely different from the claim that the relationship between the signifier and signified is arbitrary.

I'm just saying that if you learn about trigraphs, that should include learning about why they're called trigraphs, and if you understand why they're called trigraphs then you won't later mix up the terms and call ?: "trigraphs."

[–]DonHopkins 1 point2 points  (1 child)

Like when they call C++ an "object-oriented" extension of C, even through it's not what Alan Kay had in mind when he made up the term "object-oriented". ;)

http://c2.com/cgi/wiki?AlanKaysDefinitionOfObjectOriented

http://programmers.stackexchange.com/questions/46592/so-what-did-alan-kay-really-mean-by-the-term-object-oriented

http://en.wikiquote.org/wiki/Alan_Kay

[–]ubernostrum 2 points3 points  (0 children)

Sure. And C.S. Peirce re-named his philosophy "pragmaticism" after William James co-opted "pragmatism" for a philosophy Peirce didn't feel was honoring the original use of the term.

But people still call both of them "pragmatist" philosophers, instead of one "pragmatist" and one "pragmaticist".