Text sometimes exhibits case sensitivity; that is, words can differ in meaning based on differing use of uppercase and lowercase letters. Words with capital letters don't always have the same meaning when written with lowercase letters. For example, Bill is the first name of former U.S. president Bill Clinton, who could sign a bill (which is a proposed law that was approved by Congress). And a Polish person can use polish to clean something.
When a computer program compares two words to decide whether they are the same, it might or might not apply case sensitivity, depending upon the programmer’s intent.
Case sensitivity is relevant to:
Some computer languages are case-sensitive (Java, C++, C, Ruby and XML), whereas others are case-insensitive (i.e., not case-sensitive), for example, most BASICs (an exception being BBC BASIC), SQL and Pascal. There are also languages, such as Haskell and Prolog, in which the capitalization of an identifier encodes information about its semantics.
Often, computer passwords are case-sensitive and computer user names are not, which can be confusing for the inexperienced user. Passwords are often made case-sensitive to make them harder to guess, whereas making usernames harder to guess or remember is not an advantage.
It takes more work for a program to ignore case when comparing data, depending on the data being compared. Usually it suffices in text coded in character sets like ASCII or EBCDIC to merely convert the comparand and the data temporarily to one case and then compare; however it becomes far more challenging in a multi-lingual environment, e.g., using Unicode, since case-conversion rules differ between some languages, for example, in German the uppercase form for the sharp s ("ß") is SS.
Case-insensitive operations are sometimes said to fold case, from the idea of folding the character code table so that upper- and lower-case letters coincide. The alternative smash case is more likely to be used by someone that considers this behaviour a misfeature or in cases wherein one case is actually permanently converted to the other.