Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> It's just that there are more descriptive and neutral terms available to us, so why not use them?

Because it's boring.



Walter, you and I have known each other for a long time. Not in person; we've never met. But through our interactions here on HN.

I have a lot of respect for you and for everything you have accomplished.

So I have to ask you directly: Is being "boring" or not the way we should decide how to express ourselves?

Regarding a "quick test" vs. a "sanity test". Instead of judging this on what is "boring", why can't we make a choice on which is more respectful to our peers and colleagues?


Have you ever heard someone get called slow? That's an insult too.

So now you have quick tests. That's disrespectful towards me because I got called slow once.

This can go on forever.


"The test who is on a performance-improvement-plan" ;)


I’m surprised Python hasn’t ditched pip yet.


Can we get rid of the "failing" terminology? I think we should call it something more meaningful, such as "it shows there's scope for improvement", or "it highlights areas for more focus".


> why can't we make a choice on which is more respectful to our peers and colleagues?

What makes "quick" more respectful? Use "quick" and you'll be triggering everyone in standups every day :-)


I like to play with language. English has a million words in it. Why not use it? And why stop there, I insert words from other languages, play with the spelling, use bad puns, allusions to movie dialog, whatever crosses my mind.

I hope the readers/listeners would find it fun, too.

If they mine what I write for an insult, that's on them. I'm not interested in people looking for an insult, or people who get offended on behalf of others. I don't enjoy being around people where I have to walk on eggshells.

For example, I'm bald. I'm not a person experiencing hair loss. I'm bald. I've got a chrome dome. I have to wear a hat when I drive in order to not blind oncoming drivers with the glare from it.

Is changing the words going to change anything? Nope. I'm still just as bald, no matter what words are used.

I think it was Paul Graham that recently tweeted that people should not use the word "delve" into rather than "dig" into, because the former is pretentious and the latter is simpler. I'm a delver, spelunker, archaeologist, excavator, explorer, etc. Take that, Paul!


If you're writing for the pleasure of writing, that's fine. I think such an approach is great for fiction books and poetry in particular.

If you're writing in a professional context, expect your words to be read by non-native English speakers or just people that are extremely tired and want to get their work done quickly.

I think using uncommon and domain-specific words is fine when nothing else is precise enough, but there's no reason to say "touch base" when "get in contact" works.

People should also be aware of cultural context, if you're being overly sensitive and using flowery corpo-speak, people from other cultures may miss your point entirely. A sentence like "John is doing great work, but I can see some areas for future improvement" reads very differently depending on the culture. "John isn't up to standards and needs to improve if he wants to stay with the company" is much clearer. "John fucking sucks and needs to do better" is overdoing it and using the excuse of being direct to be a jerk.


unfortunately your ideals isnt compatible with the ongoing epidemic of oppression olympics.

add trigger warnings!!!! (im joking)


We should make choices based on communication, first and foremost. Words that do not communicate are not useful.

A "quick test" implies almost nothing, other than it is faster than some other, unnamed test out there. Is a quick test good or is it bad? No way to tell. This term, quick test, it does not inform.

On the other hand, a sanity test, well, it is more evocative. You definitely want to pass a sanity test.

If you reach back to your psychology classes, they talked about a four-part test that is useful for determine if a behavior is sane or not.

1) Is it abnormal? Unusual? Out of the ordinary? for the situation.

2) Is it unjustifiable, unreasonable given the circumstances?

3) Is it counter-productive? Which is to say, does the behavior serve the individual, or does it in fact make things worse? Or simply do nothing?

4) (and this is where my memory is fuzzy) I think it involves personal distress. For the life of me I can't find it via Google and it annoys me.

Now, interestingly, a sanity test matches the first three! (The fourth, well, there is no "I" in the program to be distressed) In programming, a sanity test looks for something abnormal, not reasonable for the program, and represents a state that won't get us the desired output. In short, it's highly congruent to the other context for sanity.

This term, it communicates, and in a way "quick test" does not.

In general, one of the main critiques of political correctness which few really notice is that the new term is less specific and less useful, that it fails at communicating. Consider when "Oriental" fell off of the euphemism treadmill for "Asian." We all knew that the first term referred to a particular part of the world, from the Latin for "east." (Ex lux orient and so on) "Asian," however, could refer to people in Russia or people in India, but nobody in the US does (I note in the UK India does get the "Asian" pass). So here the new term is less specific and less useful, and is confusing to boot because we deliberately ignore parts of Asia when using the term "Asian."

If you want something to supplant "sanity test," you gotta work harder for it than "quick test."


We have literally no idea what the 'sanity test' involved actually did, and the common use in computing has little connection to any such use in psychology.

https://en.wikipedia.org/wiki/Sanity_check informs me:

"A sanity check or sanity test is a basic test to quickly evaluate whether a claim or the result of a calculation can possibly be true." ...

"In computer science, a sanity test is a very brief run-through of the functionality of a computer program, system, calculation, or other analysis, to assure that part of the system or methodology works roughly as expected. This is often prior to a more exhaustive round of testing. " ...

"In software development, a sanity test (a form of software testing which offers "quick, broad, and shallow testing"[1]) evaluates the result of a subset of application functionality to determine whether it is possible and reasonable to proceed with further testing of the entire application."

and further comments that "sanity test" for some people is interchangeable with "smoke test".

It also adds:

"The Association for Computing Machinery,[8] and software projects such as Android,[9] MediaWiki[10] and Twitter,[11] discourage use of the phrase sanity check in favour of other terms such as confidence test, coherence check, or simply test, as part of a wider attempt to avoid ableist language and increase inclusivity. "

I could not find a definition for "sanity test" in psychology. I know about the cognitive test that Trump made famous with ‘Person, woman, man, camera, TV‘.


I cannot cop to "smoke test" being interchangeable with "sanity test," in any way. Smoke tests are obvious crashes, often before any real input. I had a friend on the build team of Windows NT 5.0 (until it was called Windows 2000) and their version of smoke test was "can it boot up to the login screen," and that's similar to working in electronics, where powering up your machine or circuit is all you do and you hope it doesn't release the magic smoke, before you actually do anything with it.

On that alone, I am very doubtful on that article.

This is also distinguished from what I have taken to calling a "pre-flight checklist" at the start of large programs, making sure databases are connected, requisite tables are present with the correct columns and datatypes, that specific files or directories exist, that files may be of a certain "freshness," and so on.

I'll stand by it: sanity test is a lot more descriptive and useful than "quick test." Those footnotes are only kicking the can down the road of justifiability. But let's examine them according to the aforementioned The PC Replacement is Less Useful criterion.

Recommending just "test" is ... well, double-plus ungood, in the sense that we now have no idea of the qualities of this test and how it could be distinguished from some other test. Hard pass.

"Confidence test" only implies a statistical likeliness, like a confidence interval. It does not imply the This Ought Not to Happen of a sanity test.

"Coherence test" is interesting but ... coherent against what?

If someone wants to sell me on a replacement, they are free to try, but the replacement must be at least as good at communicating what it does as the term sanity test. If this fails, then it will be scoffed at, and should be.


>Recommending just "test" is ... well, double-plus ungood, in the sense that we now have no idea of the qualities of this test and how it could be distinguished from some other test. Hard pass.

Describe the difference between a test and a "sanity test?"


We do not know if what was described as a "sanity test" actually meets your definition of a sanity test, or was used for some other purpose like a smoke test.

A quick look using Google Scholar finds people using "sanity test" for smoke testing, like

"Typical behavior is to allocate any special resource requirements it needs, map the device into virtual address space, initialize the device and perform a brief “sanity test” to ensure that the device appears to be working correctly" at https://onlinelibrary.wiley.com/doi/pdf/10.1002/%28SICI%2910...

or

"The minimum essential test cases that need to be executed to evaluate the essential functionality are known as Sanity Test Cases" https://uksim.info/icaiet2014/CD/data/7910a048.pdf

or

"Sanity test is a brief run-through of the functionality of the software system to assure that the system works as expected." https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6006830

But it's also used for full testing, including human intervention, like

"There will always be a role for manual testing. For one, it is the only real way to sanity-test your automation itself." - https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&d...

and

"Sanity test cases which checks basic functionality and are run for pre-system acceptance and when product goes thru major change. These test cases deliver a very high project value to both engineering dept and to customers." https://ijaer.com/admin/upload/06%20Apr_2012_Sheo%20Kumar.pd...

as well this example which distinguishes between shallow-and-wide smoke tests with deep-and-narrow sanity tests.

"a smoke test generally consists of a collection of tests that can be applied to a newly created or repaired computer program. This is a “shallow and wide” approach to the application." while "Sanity testing will be performed whenever cursory testing is sufficient to prove that the system is functioning according to specifications. A sanity test is a narrow regression test that focuses on one or a few areas of functionality. Sanity testing is usually narrow and deep. It will normally include a set of core tests of basic GUI functionality to demonstrate connectivity to the database, application servers, printers, etc." - http://archives.christuniversity.in/disk0/00/00/48/68/01/the...

Going with PC Replacement question, since we don't know the actual goal of what was called "sanity test", we can't ourselves come up with a better name.

Which is why we should go with the OP's assessment that "quick" is an appropriate term for what they are doing. Since you don't know what that is, it doesn't matter if you buy a new term or not.


>as well this example which distinguishes between shallow-and-wide smoke tests with deep-and-narrow sanity tests.

I think this even is contradictory for what a lot of people think a "sanity test" means. A "test" may check that something is correct, where a sanity test would be a lower fidelity test that simply checks that something is not obviously wrong.


Oh, I agree. I included it as an example of an outlier. My overall point is that "sanity test" has a range of meanings, so without knowing what the original goal of the now-named "fast" tests, it's hard to really know if "fast" is indeed a poor substitute name.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: