For example, words like "method," "puts," and "object" do not have as much linguistic markedness as "comparator," "eff-gets," and even "function" (because context alone at the very least conjures up the math term). So, for example, how do you make clear when explaining classes that when you say "your method doesn't work," that you mean the class's function doesn't work rather than the manner in which a student is carrying out the task at hand doesn't work? My current method(!) is to never use the word with its mundane meaning in a tutoring context: "In the last session, the professor went over ways for writing methods for a class."
(It may be the case that this isn't a problem for some, but in my first year, I didn't realize that "for-loop" wasn't jargon on the first exposure.)
EDIT: People have missed the point of the question. The names of certain CS concepts have more markedness (“standing-out-ness”) than the names of other concepts. Which particular concepts do not matter: “variable” sounds more like a jargon word, more like a reason to have the ears perk up and know to start taking notes, than “assignment.” When speaking out loud, how do you non-stiltedly mark jargon whose meaning may be overshadowed by a more common meaning in a non-jargon context?
getNext()
or similar both returns information and changes internal state. Stack or queuepop()
methods are similarly messy. There are undoubtedly more such examples, which is why the rule remains soft in most languages. $\endgroup$