Slashdot Mirror


Should "B" be the Same as "b"?

joshua42 asks: "Although having used Linux and FreeBSD for many years, I have yet to come across anyone seriously questioning the traditional UNIX style file system name paradigm. With an Amiga background (It should be the same for people growing up with Windows, or those growing up with no computer at all (God forbid!).) it took me quite a while to get used to 'A' and 'a' being treated as different characters. This is of course fairly easy to accept and to understand if you have a technical background. I do however have a hard time to see how aunt Ginny will ever be able to distinguish between her 'Letter.txt', 'LETTER.TXT' and 'letter.txt' files. In real life, upper and lower case letters represents almost identical information to most people. Has any thoughts been spent on this issue, now that our favorite OS is becoming increasingly mainstream? Does it need to be addressed? Have any attempts been done? What are the implications to parts outside the file systems?" This is an interesting point. As Unix grows more and more popular, the simple things we've taken for granted about the filesystem may stand in the way of general users adopting it. What ways can you think of that will mitigate this problem for new Linux users without actually affecting too much? Special shells for novice users, that can simplify much of the complexity may be the way to go, here.

148 of 330 comments (clear)

  1. Well, it's not like the OS chooses case for you.. by dmorin · · Score: 4, Funny
    Correct me if I'm wrong, but doesn't Aunt Ginnie have to actually hold the Shift key, or press Caps Lock, in order to get anything beyond "letter.txt"? Therefore, can't it be assumed in the case of Letter.txt that she did it on purpose? Sure, I'll agree that the case of LETTER.TXT is probably a user who put capslock on and forgot about it. But why deny her the ability to express herself the way she intended, if that's what she intended?

    My solution is for the OS to ignore the caps lock key. Not only would it solve the case problem, but it would shut up a whole lot of AOL users.

    :-D

  2. Flame-baitey topic by SN74S181 · · Score: 3, Insightful

    This is a flamebait topic.

    Why don't we ask: "Should the convention for tapping threads in metal be switched to left hand threads by default?"

    Nothing will change as a result of the discussion, and nothing should change. It's the 'simplify UNIX and destroy it in the process' arguement all over again.

    Good grief.

    1. Re:Flame-baitey topic by ivan256 · · Score: 2

      Fuck you you ignorant shit!

      Sorry, I just wanted to ack like you for a second to see what it was like.

      It's not a simple fix in the filesystem code to handle all the conflicts in existing filesystems and code. This is definatly a flamebait topic. The solution is in the interface, not the filesystem. If you want case insensitivity in the open dialog box of your word processor application, then implement your graphics toolkit's common dialog's appropriatly. Don't water down your core codebase in total disregard of the non-desktop users to solve an interface problem.

    2. Re:Flame-baitey topic by Cliff · · Score: 2
      Blockquote-eth the parent poster.
      This is a flamebait topic.

      Why don't we ask: "Should the convention for tapping threads in metal be switched to left hand threads by default?"

      Nothing will change as a result of the discussion, and nothing should change. It's the 'simplify UNIX and destroy it in the process' arguement all over again.

      Good grief.

      I'm sorry you feel that way. That was not the intent when I posted the question and I feel that I need to be a bit defensive here. Whether you agree with me after this...well, that is up to you.

      My point is that getting Unix (and it's variants) adopted by more users may require a change in how data is presented to them. We don't need to lose case sensitivity in the file system, and in many cases we shouldn't. When I posted this question I didn't even mean to imply that such a change should be made at such a low level. I implied a shell change. Nothing more.

      Your analogy above regarding thread tapping is highly misleading and incorrect. There is nothing stopping someome from correcting this problem, and it's need not be as complex as changing ext2/3 or any filesystem for that matter, but the actual piece of software that interracts with the user!

      For files like "LETTER.TXT", "Letter.Txt" and "letter.txt", what's stopping a "basic shell" from presenting these as "Letter.Txt(1)", "Letter.Txt(2)", and "Letter.Txt(3)". Note that we follow a standard case template for all files displayed and just add a counter which is easier for people to distinguish rather than differing case? These are all interface issues. The shell itself could disallow for creation of a filename that is a mixed-case version of something is already on the system (meaning that the display above need only occur if such files exist on the underlying file system).

      This allows for Granny to have her own portion of the hard drive, while you can continue to use bash and it's ilk without effect. That's the trick here, trying to accomodate others without affecting anyone else, and hence the reason why I posted it.

      I figure anything we can do to make Unix more appealing and intersting to use for the masses (without affecting ourselves) we should do. Please don't assume that a question is "stupid" or "impossible" solely because you don't see a workable solution. There are many heads here. Let's put them together and see if we can come up with something agreeable for everyone.

      This is the purpose of Ask Slashdot in a nutshell.

      I also disagree that change can't occur due to discussion. I instead posit that discussion is an essential trigger for change, and I respectfully challenge you to prove me wrong on that point.

    3. Re:Flame-baitey topic by rtaylor · · Score: 3, Insightful

      End result, having l == L isn't right either. You're just going to piss off people in a non-en locale.

      What you really want are unicode enable file naming with colation patterns applied appropriately per locale the users locale.

      --
      Rod Taylor
    4. Re:Flame-baitey topic by Stary · · Score: 2
      I'm sure removing case sensitivty in this late hour would be a pain

      Really? Can you honestly say you know of something that depends on the fact that there can be files somestuff, SomeStuff and SOMESTUFF in the same directory or on the same path?

      In general, people know that if I make a README, a ReadMe and a readme file, not even the most techie person is going to remember witch one contains what, so you don't do it.

      I consider this worth doing - in fact, I consider even deeper changes to the way *nix handles it's files (see my journal on that) worth doing.

      The actual problem is not that it would be hard, but that all the idiot l33ts would flame a full volcano about it "ruining linux". And then there are always the people who think that it should be done in the UI instead of in the system itself - which of course never worked and never will work (especially not in the OSS world) because alot of programmers say "screw you" to the guides and "my way of doing it is much better".

      The biggest difference would probably be that you'd get one less error once in a while from doing the wrong capsation (is that a word?) of a filename.

      --
      Tomorrow will be cancelled due to lack of interest
    5. Re:Flame-baitey topic by Paul+Jakma · · Score: 4, Informative

      yes there is a good reason. and it is not about "removing" case-sensitivity, it's about adding it.

      The basic issue is that Unix filesystems at the kernel level do not interpret filesystems in /any/ way what so ever. The only restrictions on Unix filesystem names is that no byte within a name may equal '\0' or '/'. You can put whatever characters or bits you want in a filename as long no byte equals ASCII \0 or /.

      This means no "tolower()" or case comparison overhead in the kernel. No complicated (and perhaps non-obvious) policy in the kernel.

      It also means filename schemes are easily extensible in userspace. Eg, Unix filesystems support Unicode, UTF-8, ISO8559-[0-9][0-9], and whatever other encoding system you want provided you respect '\0' and '/'. In fact Unix supported Unicode, UTF-8, etc.. almost from day one (ie 1970), literally /before/ these 'beyond ASCII' schemes were even invented. Unix filesystems also support many many other future encoding schemes that have not been invented yet. :)

      Basically, tolower() / case comparison can be easily done in userspace - hence that is the best place for it. Now, of course, userspace might not always agree on policy or how to implement it, but that is not a kernel problem.

      Case sensitivity is a matter of taste, and as such it's best not done in the kernel (where it will be set in stone forever). That's actually a general Unix design principle "policy should be implemented in userspace" - and it's actually a very good design principle..

      now let's see how many slashdotters fail to realise it..

      --
      I use Friend/Foe + mod-point modifiers as a karma/reputation system.
    6. Re:Flame-baitey topic by spongman · · Score: 2

      eh? what about all the unicode chars with '\0' or '/' in them (excluding L'\0' and L'/', of course)? how are they supported?

    7. Re:Flame-baitey topic by walt-sjc · · Score: 2

      Poor Granny's fingers get tired too. Better limit us to 8.3 filenames like DOS.

      Granny also has trouble with her password. Sometimes she has the capslock key on and can't login. Better make all passwords case insensitive

      Where do you stop? Granny shouldn't use the shell. Granny should use a GUI. Would you suggest that granny use a "command prompt" in Windows instead of Windows Explorer?

      This is a flamebait topic, sorry. If granny is a fucking idiot, she will have trouble with certain features / behaviors in ANY type of computer / OS. If she is NOT a fucking idiot, she can learn that filenames, like passwords, are case sensitive. It's just not that hard of a concept to grasp. You seem to think it is for some reason. I've taught a number of not-very-bright people that filenames are case sensitive on UNIX. They never needed to be taught twice. The response was usually "Oh, OK. Now I know!"

      I'll give you one VERY good reason why you shouldn't do "LETTER.TXT", "Letter.Txt" and "letter.txt", as "Letter.Txt(1)", "Letter.Txt(2)", and "Letter.Txt(3)" in a "basic shell". NO OTHER PROGRAM WILL KNOW WHAT "Letter.Txt(3)" IS. You are going to make Granny MUCH more confused than she already is. She will wonder what happened to her files as the names are "changed" out from under her. Sorry, changing things on the user behind the scenes is NOT userfriendly. Trying to explain to the user why filenames get changed and how is MUCH more difficult than just saying "Filenames in UNIX are case sensitive which means that letter.txt is different than Letter.txt.

      There are MANY usability issues in Linux that need to be addressed. Filename case isn't one of them. You are attempting to make a "big deal" out of a TRIVIAL educational issue.

      There is an old medical saying that applies: The cure is often worse than the disease (usually heard refering to side effects of drugs, some of which are nasty.)

    8. Re:Flame-baitey topic by Paul+Jakma · · Score: 2

      no idea. you have examples of those unicode chars?

      anyway - it's not the kernel's problem, that's the precise point. the encoding is a userspace problem.

      also, those chars can not be used in URIs either. So i suspect one answer is to deal with them in the same way as for URIs.

      --paulj

      --
      I use Friend/Foe + mod-point modifiers as a karma/reputation system.
    9. Re:Flame-baitey topic by spongman · · Score: 2

      sure, the unicode char L'A' (0x0041) has a '\0' in it. most kernel API's take 8-bit, zero terminated strings. they are not unicode compatible.

    10. Re:Flame-baitey topic by MaxVlast · · Score: 2

      Re: 3--

      Boy -- that is a dumb idea.

      I like the way Mac OS X does it, if it has to be done at all (I'm not entirely convinced.) It's case-insensitive (except for the shell, of course) but it's case-preserving. So in a open/save dialog I can enter 'File.txt' and 'file.txt' but when I use tcsh, I have to distinguish between the filenames. It's just the right way to go about it, if you're going to go about it in the first place.

      --
      There should be a moratorium on the use of the apostrophe.
      Max V.
      NeXTMail/MIME Mail welcome
    11. Re:Flame-baitey topic by Paul+Jakma · · Score: 2

      hmm, well it's not that "pure" unicode is incompatible with unix kernel APIs, it's more that pure unicode is incompatible with the vast majority of C APIs that handle strings (of which parts of the kernel API might be fall under).

      however, guess what, "they" thought of this problem and solved it. Hence (eventually) UTF-8 - which encodes the unicode character set to ASCII compatible bytes, hence it can be used with kernel APIs such as filenames.

      man ascii
      man unicode
      man utf-8

      so again, unix has supported unicode since before it was even invented. :)

      and again, if in the future some new, more expansive character set and encoding standards are brought in, unix will support those too, as long the encoding makes sure to escape any byte bounded 0x00's and 0x2f's that might occur in the character set.

      PS: what's an 8-bit zero terminated string exactly? :) (just kidding - know what you mean, but it's perhaps a strange way of putting it).

      --
      I use Friend/Foe + mod-point modifiers as a karma/reputation system.
    12. Re:Flame-baitey topic by nathanh · · Score: 2
      sure, the unicode char L'A' (0x0041) has a '\0' in it. most kernel API's take 8-bit, zero terminated strings. they are not unicode compatible.

      That's what UTF-8 is for.

    13. Re:Flame-baitey topic by skotte · · Score: 2

      hey! someone who gets it! cool!

      like, i saw the story topic and was like "cool! about damn time someone mentioned this!" it's the one most annoying thing about unix. i swear, i can install a program, and hen spend ten minutes trying to get the right command to run the dumb thing!

      Xconfigurator is the worst! (see? i probably go it wrong there... what the hell is that command?)

      you know, and it's not like theres ever any actual things which get the same name with different caps. like "StarOffice" and "staroffice" or something.

      c'mon linus! please, heed my pleas!

    14. Re:Flame-baitey topic by skotte · · Score: 2

      such as?

      i'm no guru, but i dont know of any real issues which would need to be resolved. please give examples.

    15. Re:Flame-baitey topic by Paul+Jakma · · Score: 2

      sigh.. you didnt get the point did you? :)

      the point is that case insensitivity can be done just as well by user applications as by the kernel. (with the benefits to the kernel in overhead and not getting involved in policy that i detailed before). Hence it should not be done by the kernel.

      Eg: the GNOME file dialogue - that could easily do case sensitivity checks. Nautilus could be made case insensitive. The only time the novice user you speak of will notice, on this as yet non-existant case insensitive distro, that the underlying filesystem treats filenames as byte arrays and no more is if the novice user opens up a terminal and uses regular unix commands.

      Also, OS X: i'm not 100% sure, but i suspect OS X is the perfect example of what i'm talking about. Ie a traditional unix filesystem, with case insensivity, etc. done by user applications. AFAIK (and i could be wrong) if you open a terminal on OS X you will find the underlying FS is a traditional case-sensitive unix fs.

      Ie - it's all done by application code.. not kernel code. (least it should be).

      --
      I use Friend/Foe + mod-point modifiers as a karma/reputation system.
    16. Re:Flame-baitey topic by Paul+Jakma · · Score: 2

      I guess I didn't, I don't think you got mine either. :)

      quite possible. but we're getting there. :)

      however, i think you gave the perfect example to illustrate my point: OS X. iiac in OS X the underlying fs is a normal case sensitive unix fs, and applications handle issues like case insensitivity. (iiac)

      What I'm saying is, to a degree, this is already being done at the filesystem level.

      no, what you're saying is it /can/ be. that doesnt mean it's a good idea, or that there are no better ideas.

      For example, installs that can run on DOS filesystems, like Zipslack. The kernel isn't specially modified in order to do that (AFAIK), but the kernel component dealing with that specfic filesystem handles the limitations and abstracts the fs from the rest of the kernel.

      indeed. DOS is case insensitive by specification. what the actual detail is i dont know. it could be that filenames are all ways tolower()'ed before comparison and before writing to disk. doesnt matter. however, go read the man page and look at all the options for the msdos filesystem relating to filename lookups and charset issues. (eg code pages, 8 bit chars, etc..)

      once you go start down this road, where do you stop? eg, what exactly does "case sensitive" mean? you are assuming western alphabets. what about asian characters? what about pure symbols? you end up having to put intimate knowledge of, eg, unicode (which tries to cover most of the character sets of the world) into the filesystem.

      also, once that knowledge is put in the kernel, the expression of that knowledge by the kernel to applications, eg through behaviour of case handling, becomes almost set in stone.

      also, your filesystem is now probably limited to character set and encoding you chose to use. What if something better comes along? you cant use it without fundamentally changing one of the building blocks of your computer. and any programming errors in kernel code can crash your machine, even trash all the data on your disks, so you really want your kernel to be as simple as possible, and you really want to keep as much complexity as possible (eg how to interpret arrays of bytes into the symbols that humans use) out of the kernel and in userspace where potential to affect reliability/integrity is lower.

      like i said, a unix fs by default supports UTF-8, and any future char set + encoding that may be invented. (as long it takes care to mind its '\0's and '/'s).

      Application code could handle it, though.

      exactly :)

      It's just a lot of places to change and you would want to be consistent.

      well, consistency of applications is by definition just not a kernel problem. And isnt OS X consistent?

      I suppose there are larger UI issues to worry about, I was mainly wanting to counter the "silly newbies, Linux is for real hax0rs" chorus.

      urg.. give me open-minded unix newbies over those any day. :)

      Thanks for comming up with a real answer Oh, and AFAIK: By default OSX uses HFS+ which is the same filesystem as OS9 and before. It also supports UFS(?), a filesystem from Apple's A/UX, which is a traditional unix fs.

      indeed.

      so what is the default filesystem on an OS X install? and if UFS is used, are the user applications case sensitive or not? i'd be very curious to find out as to how OS X deals with this.

      --
      I use Friend/Foe + mod-point modifiers as a karma/reputation system.
    17. Re:Flame-baitey topic by Cliff · · Score: 2
      My example was just that, an example. It may not work in practice, but my point was trying to find a way to absolve confusion. Your elitist attitudes aside, I firmly believe that usability issues are crucial in getting Unix accepted by a wider market.

      Dispite what you feel, I don't believe a person's inability to deal with case sensitivity makes them "an idiot". Computers can be difficult to use, even for Ph.D's. It's these little details that will catch people, and if they are going to think about Unix (Linux, specifically) it's these little things that will serve as a barrier for use.

      What I'm saying is that this issue deserves some thought. Can this issue be solved without expecting the user to "learn his environment"? Let me clue you in: if the interface isn't intuitive then people won't use it. If people don't expect case sensitivity based on what they've used before, or how they think it should work, then they won't use it. It's this kind of thinking that keeps people going back to Microsoft, and believe it or not, Microsoft is where it is because they do pay attention to issues like this.

      If you do think they are stupid and aren't worth your time, then fine. Ignore this issue, and go about whatever it is you do and let the people who do want to talk about it discuss things in pease. You may be surprised at what they come up with.

      Flame-bait or not, this topic has received over 300 comments in less than a day, and this issue wasn't even posted to the main page! I think it sounds like the majority of Slashdot does want to discuss this. I'm sorry if this disappoints you, I can't please everyone with my article selection, but that's the way the system works.

    18. Re:Flame-baitey topic by tomhudson · · Score: 2
      Take a look at gcc -
      • files ending in .c are compiled as c
      • files ending in .C are compiled as c++

      There's always been meta-information in the way we type things - example: IF I TYPE THIS IN ALL_CAPS, then I'm shouting.


      Also, musicians such as k.d.lange (all lowercase) express their individuality by using lowercase initials.

  3. Apple.... by jeffy124 · · Score: 4, Informative

    Apple OSX is already case-insensitive in terms of filenames, probably for the reason mentioned. MS Windows/DOS have probably all done that for the exact same reason as well.

    Of course, in OSX this did cause a security hole in Apache, but it was small, required a specific setup, and was easily fixed.

    --
    The One Rule Of Chess You'll Ever Need: Don't play someone who carries a kit in their bookbag.
    1. Re:Apple.... by medcalf · · Score: 5, Informative

      Actually, OS X per se is not this way. The HFS+ filesystem used by OS X is this way. Using UFS on OS X (built-in and easily used if you want to) uses a case-sensitive, rather than simply case-preserving, filesystem.)

      --
      -- Two men say they're Jesus. One of them must be wrong. - Dire Straits
    2. Re:Apple.... by norwoodites · · Score: 2

      There is even a paper about the problems of integrating the UNIX and Mac OS Environments:
      http://www.mit.edu/people/wsanchez/ papers/USENIX_2 000/, it talks about more than just case sensitive but there were a few more problems than that going from UFS to HFS+. Also it takes about how to go from a single user system to a multiple user system and back.

    3. Re:Apple.... by medcalf · · Score: 2

      For OS X server, I think it default to UFS.

      For the desktop, it installs on whatever the disk was formatted as already, if you are not reformatting. If you reformat, it's a pop-up selection, and I think that the default is HFS+.

      (It's been a while since I formatted a disk under OS X - since I installed it the first time, in fact - so I am not positive about the defaults.)

      --
      -- Two men say they're Jesus. One of them must be wrong. - Dire Straits
    4. Re:Apple.... by Van+Halen · · Score: 3, Insightful
      Yes, the default in OS X is HFS+. Apparently UFS is much slower, and many Carbon applications have problems running from a UFS partition (I use HFS+ but have read this in many user reports). I'm not sure why - OS X handles resource forks on NFS filesystems by creating a ._File.Name file to hold the resource fork. I would assume it does the same for UFS, but I don't know. Or maybe some applications expected to be able to write to the same file using different capitalization. Don't know why they would be so sloppy, though.

      Back to the main topic, I agree with Apple's position on this. I used to wonder why they would put in such a ridiculous limitation when it would be so easy to "fix," but then I thought about it. There is absolutely no reason to have files named "readme.txt" and "Readme.txt" in the same directory. If they are truly different files, then name them differently - ie, "ReadmeFirst.txt" and "ReadmeLast.txt." Capitalization is mostly arbitrary and conveys no information in this context. It can only lead to confusion when a human has to interact with such files. Sort of like George Foreman's house, where his kids are named george, GEORGE, GeorgE, georgE, GeOrGe, etc. What a mess!

      If you're still not convinced, think of all the chaos and confusion that would happen if domain names were case sensitive.

    5. Re:Apple.... by self+assembled+struc · · Score: 2

      acutally, it is semi-case senstive. iu'm using an HFS+ partition with my own compiled version of bash, and in the shell its case sensitive, but otherwise not.

  4. Sort order by myawn · · Score: 3, Insightful
    'A' is different than 'a'. This isn't unique to computer filenames; we all learned this in the first grade. If there is any confusion, it is probably caused by those other computers that blurred a distinction we were all quite comfortable with.

    What is confusing is that "A" and "a" don't sort next to each other -- so, letter.txt doesn't end up following Letter.txt, but instead is down somewhere past Zebra.jpg. That defies reason; if something is to be fixed, let it be that.

    --
    Subscribers can see articles in the future? So what? Everyone gets to see them in the future.
    1. Re:Sort order by Papineau · · Score: 4, Informative

      That behavior depends on your locale.

      Let's say I have a file with the following (meaningless) unsorted content:
      asklhf
      Adjgd
      zaskd
      Zaoifh


      If I sort it with LC_ALL=posix sort myfile, here's what I get:
      Adjgd
      Zaoifh
      asklhf
      zaskd


      Now, that is exactly the kind of behavior that you dislike.
      Try this (LC_ALL=en_US sort myfile) now:
      Adjgd
      asklhf
      Zaoifh
      zaskd


      Much like you wanted it to be, right? The C locale seems to give the same results as posix, and fr_CA gives the same thing as en_US. I'll leave it to somebody else to explain it by looking in a specific standard, or in the source code.

      So in short, check that your locale is correctly specified, and sort should do what you want it to do. Or, you could just use the --ignore-case of sort.

      Or were you talking about something system-wide, for ls, file selection boxes, etc.? Then it depends on where the sorting is done, and might be more difficult to fix (since you'll always miss one place).

    2. Re:Sort order by Narchie+Troll · · Score: 4, Funny

      Oh? Well, as a result of a single capitalized "C" in your above post, you just accused another poster of snorting a soft drink. Capitalization does matter. *chuckles*

    3. Re:Sort order by frantzdb · · Score: 2

      That's really cool. Now why isn't that the default?

      Personally, I think it should be smarter and sort the way library books are sorted, sorting strings of numbers in numerical order such that:

      0121020

      and

      Aa

      --Ben

    4. Re:Sort order by frantzdb · · Score: 2

      Make that 0<1<2<10<20

  5. Re:Well, it's not like the OS chooses case for you by secret_squirrel_99 · · Score: 2, Insightful

    What are the odds that your Aunt Ginny or any equally technically inept person is actually using *nix for something so mundane as typing a letter. She is almost certainly using some Flavor of Windows, or perhaps a Mac. OS X is already case insensitive, and lets face it, Aunt Ginny is never going to open a term window anyway. As long as she can point and click she can find and open her letter regardless of how its named. In the really unlikely event that she is in fact using *nix do you really think she's using vi to send those letters home? or is it more likely she is using KDE or Gnome as a windows substitute and is still quite fine as long as her mouse finger holds out? I'd say this is really a non issue. .

    --
    If privacy had a tombstone it would read "We did it for your own good" . -- John Twelve Hawks
  6. No by Mad+Quacker · · Score: 2, Insightful

    Novice users will always use file selection dialogues and icon-based file managers. Thus the only time they type a filename is at initial creation. Beyond that it does not matter. If they are going into a shell, they are not novice users anymore (I doubt you will see aunt Ginny do this)

    --
    "I don't know that atheists should be considered citizens, nor should they be considered patriots." George HW Bush
  7. 'A' is not 'a' by mmynsted · · Score: 3, Interesting

    >Although having used Linux and FreeBSD for many years, I have yet to
    >come across anyone seriously questioning the traditional UNIX style
    >file system name paradigm.

    >With an Amiga background (It should be the same for people growing up
    >with Windows, or those growing up with no computer at all (God
    >forbid!).) it took me quite a while to get used to 'A' and 'a' being
    >treated as different characters. This is of course fairly easy to
    >accept and to understand if you have a technical background.
    >I do however have a hard time to see how aunt Ginny will
    >ever be able to distinguish between her 'Letter.txt', 'LETTER.TXT' and
    >'letter.txt' files.

    Just like how aunt Ginny was likely somehow able to grasp that her
    name is written aunt Ginny and not aunt gInNy, aunt gINNy, or other
    combination. Give her a little credit. Simply explain that the case
    is part of the file name. Your example Letter.txt file names would be
    a perfect way to show her the difference. Just make each contain
    different information, and open each one to show her they are
    different.

    File systems should be case sensitive. An upper case 'A' is a different
    character than a lower case 'a'. We should not confuse people by
    tricking them when the create file names.

    >In real life, upper and lower case letters represents almost identical
    >information to most people.

    Almost, but not identical.

    >Has any thoughts been spent on this issue, now that our favorite OS is
    >becoming increasingly mainstream?
    >
    >Does it need to be addressed?

    No.

    >Have any attempts been done?

    I hope not. Mount a case insensitive file system if you want one.
    Leave existing file systems alone.

    >What are the implications to parts
    >outside the file systems?" This is an interesting point.

    >As Unix
    >grows more and more popular, the simple things we've taken for granted
    >about the filesystem may stand in the way of general users adopting
    >it.

    The sooner people accept that 'Ginny' and 'gInNy' are not the same the
    sooner they will understand how to interact with a computer.

    >What ways can you think of that will mitigate this problem for new
    >Linux users without actually affecting too much? Special shells for
    >novice users, that can simplify much of the complexity may be the way
    >to go, here.

    How about a mouse-click'n GUI like GNOME, KDE, etc.

    1. Re:'A' is not 'a' by Dephex+Twin · · Score: 2
      The sooner people accept that 'Ginny' and 'gInNy' are not the same the
      sooner they will understand how to interact with a computer.

      The sooner UNIX-based computers learn that when a person is looking in a directory for "letter.txt" that "Letter.txt" is probably what they mean, the sooner they (the computers) will understand how to interact with people.

      And shouldn't that be the point of it? Not the other way around.

      "Hello" and "heLLo" and "HELLO" are slightly different things. This is noticed by anyone. Yet, I am betting that if someone wrote you one of these variations, you would not tell them they were speaking nonsense. You could, but you'd be the moron, not them.

      Preserving cases is good, so if I name my file "Hello.txt", the cases should be preserved. But then if I look for "hello.txt" in that very folder, or I don't remember the capitalization exactly later, the OS shouldn't act like these are two totally unrelated strings.

      Having it the anal way in the system, and user friendly in the GUI or in a special shell is definitely a step in the right direction, although if the user ever ends up having to interact with the anal system, that inconsistency would be quite confusing.

      mark
      --

      If you want to make an apple pie from scratch, you must first create the universe. -- Carl Sagan
    2. Re:'A' is not 'a' by mmynsted · · Score: 2, Insightful

      There are often situations where the case is important
      in order to better identify a file.

      Example:

      A file regarding a person named Bart may be called 'Bart.txt'.

      A file regarding the Bay Area Rapid Transit system may be called
      'BART.txt'.

      Just by looking at the file names, one can have a good idea about
      their contents. The names are short, direct, and clear.

    3. Re:'A' is not 'a' by CharlieG · · Score: 2

      ...snip...
      >The sooner people accept that 'Ginny' >and 'gInNy' are not the same the
      >sooner they will understand how to interact >with a computer. ...snip...

      One of the big questions - should the end user learn to interact with the computer, or should the computer learn to interact with the person?

      Most "real" folks (aka, not us geeks) want the computer to do the work - the ultimate computer would have ONE command - DO WHAT I WANT

      Charlie

      --
      -- 73 de KG2V For the Children - RKBA! "You are what you do when it counts" - the Masso
  8. case insensitive sorting in apps by Splork · · Score: 2

    any application or standard dialog that lists filenames but does not sort them in a case insensitive manner should be trashed. its useless. i don't care if the filesystem itself is case sensitive or not but the high level application user should not present them to the user in a messed up order putting apple after Orange.

    1. Re:case insensitive sorting in apps by swright · · Score: 2

      Wasnt the original reason for this that files that were especially important were capitalised (README, INSTALL, etc) specifically so they'd head up the list in ls.

      Sounds like a good idea to me - but a real pain in the butt when dealing with files created on Windows.

    2. Re:case insensitive sorting in apps by rtaylor · · Score: 2

      End result, any dialog that lists filenames in the manner you propose is also useless.

      Use the proper collation, sorting, etc. based on the users locale. You'll notice sort does what you want if you're in the 'en-US' locale, but also does what I want in my locale.

      --
      Rod Taylor
    3. Re:case insensitive sorting in apps by sigwinch · · Score: 2
      Wasnt the original reason for this that files that were especially important were capitalised (README, INSTALL, etc) specifically so they'd head up the list in ls.
      You can prepend 0 (numeral zero) to the few files that need it to force them to sort to the top, then do case-insensitive sorting. This convention is already in use. E.g., Documentation/00-INDEX in the Linux kernel sources.
      --

      --
      Kuro5hin.org: where the good times never end. ;-)

  9. They Don't Look the Same by 4of12 · · Score: 2

    If "B" and "b" were meant to be the same, they'd look the same.

    In many languages, English and German to take two examples, capital letters have had a specific usage for a much longer time than computers, or eve for a much longer time than typewriter keyboards. They are different letters and, more importantly, people believe they're different letters.

    Why regress to that era 20 years ago when in some strange computer-based subculture of reality the two letters were indistinguishable?

    --
    "Provided by the management for your protection."
  10. Apple's solution is just about ideal. by voisine · · Score: 2, Insightful

    OS X remebers case, but ignores it. This way your
    file is named just the way you typed it, caps and
    all, but if you reference it with different
    capitilazation, it still matches. If you try to make
    a second file with the same letters but different
    capitalization, it won't let you. The best of both
    worlds. No multiple files with the same name, yet
    case is preserved for looks and correct grammar.

  11. some rules of English by nwanua · · Score: 3, Informative

    Yes, I know this is English-specific, but perhaps other languages have similar distinctions:

    what's the difference between:

    "I went to school."
    and
    "I went to School." ?

    In the first sentence, school is being used as a regular noun: which school? Who cares? On the other hand, in the second sentence, School is being used as proper name - there can be only one School.

    In other words, if English speakers can understand the nuance between school and School, then said English speaker (please avoid dissing the US publik skool edukashion sistem) can reasonably be expected to distinguish between letter.txt and Letter.txt (ie. "letter? Which one?" vs. "Letter? ahh yes, THE Letter").

    Anyhoo, an example of a totally confused implementation: Mac OS X: some things understand the difference, some don't:

    ie: /home/Dock and /home/dock go to the same place. Yet do a pwd or try tab completion and it's all confused. (the location in finder is /home/Dock, for clarity). My take on the issue is "I will remember how you named it; just kindly tell me the file you want, exactly how I told you it's called".

    Nwanua.

    ps. if the above is true ONLY for English, all you have to do is politely state that fact, and we'll all be better informed...

    1. Re:some rules of English by topham · · Score: 2

      Actually, according to what you've said files should be enforced to begin with a capital.

      There is only 1 "Letter.txt". letter.txt would be generic, and not a noun, and therefor would have to be a folder.

      oh god...

    2. Re:some rules of English by mshiltonj · · Score: 2


      "I went to school."
      and
      "I went to School." ?

      In the first sentence, school is being used as a regular noun: which school? Who cares? On the other hand, in the second sentence, School is being used as proper name - there can be only one School.

      In other words, if English speakers can understand the nuance between school and School, then said English speaker (please avoid dissing the US publik skool edukashion sistem) can reasonably be expected to distinguish between letter.txt and Letter.txt (ie. "letter? Which one?" vs. "Letter? ahh yes, THE Letter").


      I think this is a bad example. The difference between "school" and "School" is very different beween the difference between "letter.txt" and "Letter.txt".

      Grammatically, we know the difference between "School" and "school".

      But a computer doesn't really know the diffrence better letter.txt and Letter.txt any more than between "letter.txt" and "lEtTeR.TxT", or for that matter, between "letter.txt" and "abcefg.hij". More specifically, it doesn't know the relationship between "letter.txt" and "Letter.txt".

      Some applications can understand insensitivity (like "grep -i letter *")

      I'm not sure where I stand on this. Should people act more like computers, or should computers act more like people? *shrug*

      I tend to like a suggestion made by another use on this thread: Mount a case-insensitive file system if you need it.

    3. Re:some rules of English by tunah · · Score: 2

      This is probably irrelevant, but the sentence is grammatically correct. "school" needs an article, for example:
      "I went to my school".
      "I went to School" is probably okay.

      --
      Free Java games for your phone: Tontie, Sokoban
    4. Re:some rules of English by FunkyChild · · Score: 2

      The problem with that example is that filenames are all proper nouns, and they all need to be referred to in the definite article (I think that's the correct grammatical term?). The disctinction between 'any' school and 'the' School doesn't translate to filenames, because you're always referring to a file in particular, not a collection of files (which would perhaps be a directory, or a find query or something).

  12. Unix has it right by photon317 · · Score: 3, Interesting


    The problem is more complicated than the question makes it out to be. An Ideal filesystem should allow any random binary bits to make up a filename, such that the filenames can be Unicode, so that Chinese people can name files in Chinese, Math professors can use the unicode for a math formula as the name of a document describing how to solve it. When you think in this bigger sense - it becomes a lot harder.

    Ideally the encoding method (Unicode in this example) should provide some way of seeing the equivalency of certain characters (two different representations of the equal sign, two different cases of the letter A, etc..), and the application should be able to make use of this during a regex search, or maybe even during a library wrapped "open() or readdir()" call, where the application is "Windows Explorer", "bash", or anything else.

    Ultimately this has to be resolved in userland tools and the libraries that support them - the best answer for the filesystem layer is to support all possible characters literally and meaningfully in filenames, so as not to restrict the schemes layered on top of it.

    --
    11*43+456^2
  13. Preserve Case but don't make it case sensitive by topham · · Score: 5, Insightful

    The only reason why Unix is case sensitive is because it was easier, and faster to implement it as such in the early days.

    It is not quite efficient to Preserve Case, and not make it case-sensitive.

    I used a file system like this (HPFS) for many years and much prefer it over the case-sensitive alternatives.

    It is also a security concern. If I have 2 files, which are identical except for case it is possible I could run the wrong one. Why? Point and Click interfaces barely show a difference between o and O, etc.

    There is also no need for 2 files with the same name, and different case when it comes to SOURCE CODE. I have seen more than 1 program implemented like this and it is downright confusing and stupid. " No no, not "ubergeek.c", "Ubergeek.c"... etc.

    Garbage. Crap. Total waste of resources.

    I've been working in a database language that is case-insensitive for a number of years as well. It is damn nice to not have to worry about somebody typing something in differently than expected. It isn't a problem. And I don't have to call UPPER every time I do something!

    case-sensitive is a pain in the ass.

    1. Re:Preserve Case but don't make it case sensitive by bill_mcgonigle · · Score: 2

      It is not quite efficient to Preserve Case, and not make it case-sensitive. I used a file system like this (HPFS) for many years and much prefer it over the case-sensitive alternatives.

      You might enjoy HFS+. It does what you describe. Lots of folks who appreciated OS/2 are coming to appreciate OS X.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    2. Re:Preserve Case but don't make it case sensitive by sigwinch · · Score: 4, Informative
      The only reason why Unix is case sensitive is because it was easier, and faster to implement it as such in the early days.
      No, it's because case sensitivity is the Right Thing.
      It is also a security concern. If I have 2 files, which are identical except for case it is possible I could run the wrong one. Why? Point and Click interfaces barely show a difference between o and O, etc.
      If by "Point and Click" you mean "the egregiously bad fonts chosen for Windows", I agree. They have other problems, such as "1Il" (one capital-eye lowercase-ell) and "O0" (oh zero). (Will the real Bruce Perens please stand up? ;-)
      There is also no need for 2 files with the same name, and different case when it comes to SOURCE CODE. I have seen more than 1 program implemented like this and it is downright confusing and stupid. " No no, not "ubergeek.c", "Ubergeek.c"... etc.
      On the other hand, it is arguably useful to distinguish between file.c and file.C.
      I've been working in a database language that is case-insensitive for a number of years as well. It is damn nice to not have to worry about somebody typing something in differently than expected. It isn't a problem. And I don't have to call UPPER every time I do something!
      All computers are not Vaxes. All text is not 7-bit ASCII. For a general purpose Unicode-compatible system, **THERE IS NO WAY TO BE CASE INSENSITIVE**. Period. End of story. No further discussion. How do you handle "Â" versus "â"? Or "" versus ""? (Capital thorn versus small thorn.) Or "Æ" versus "aE"? Or similar things for terrorist languages like Arabic and Klingon? Or the Russian letter whose name escapes me that looks exactly like a capital "O" but *isn't*. (That one's good for all sorts of fun.) The answer is that you don't even try. Anything you do is going to break badly, and a system that is randomly broken is less useful than a system that is consistent.
      --

      --
      Kuro5hin.org: where the good times never end. ;-)

    3. Re:Preserve Case but don't make it case sensitive by gorilla · · Score: 2

      It's even worse in some languages. You have a single letter for one case, and more than one letter for another case. German is a good example here, The sharp S character is ß (ß) in lower case, but SS in upper case.

    4. Re:Preserve Case but don't make it case sensitive by topham · · Score: 2

      It was definitly true on HP/UX version 9, probably 10 as well.

      I ran into that problem more than once when users logged in with CAPS on...

    5. Re:Preserve Case but don't make it case sensitive by topham · · Score: 2

      I'm not here to debate the issues related to other languages.

      I'm saying that: For English usage differentiating between file.c and file.C is stupid.

      case sensitivity isn't 'The Right thing.' it is an artifact of the times. Nothing more. I have absolutly no reason to believe it was an 'active' decision made the first time to be 'correct'. Rather it was 'it happened to work this way when we finished', or, 'well, it was faster than converting everything to uppercase for comparisons because we only had 2K of storage anyway.'.

      I believe that case-sensitivity in a filesystem is nothing but a problem waiting to happen.

      On the other hand, I used to program in C a lot and never had a major complaint about it being case sensitive. Of course I don't expect just anyone to be playing with C source code either.

    6. Re:Preserve Case but don't make it case sensitive by topham · · Score: 2

      If I could run OS X on my current hardware I probably would.

      Oh well... I liked BeOS too so what the hell do I know?

    7. Re:Preserve Case but don't make it case sensitive by PD · · Score: 2

      I just tried it on my Debian box. With CAPS lock on, it also switches to all caps mode. Weird, but it works.

    8. Re:Preserve Case but don't make it case sensitive by joto · · Score: 2

      Well, of course it should be Æ vs æ. There are some languages that actually use that as a letter and not a ligature you know. But I agree that it is a problem...

    9. Re:Preserve Case but don't make it case sensitive by nathanm · · Score: 2
      Or similar things for terrorist languages like Arabic and Klingon?
      That's a troll if I ever saw one, but I'll bite.

      Arabic characters have no case at all. However, most of them are written slightly different depending if they're at the beginning, middle, or end of a word; written by themself; or follow a non-connecting character. When typing though, this is done with no extra effort to you. The computer changes the characters based on the next character typed, if needed.

      As for Klingon, I don't know and I don't care. It's an entirely useless waste of time.
    10. Re:Preserve Case but don't make it case sensitive by gorilla · · Score: 2

      library functions can only be part of the answer. Two different languages can have the same accented characters, but different rules about case conversion. You need to know if it's fr_CA or fr_FR.

    11. Re:Preserve Case but don't make it case sensitive by bill_mcgonigle · · Score: 2

      If you have an IBM PC compatible, you can probably run the x86 port of darwin with X. Should get you HFS+. (haven't tried myself)

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  14. Think about it a second by PD · · Score: 4, Interesting

    iF yOU wROTE a lETTER tO yOUR aUNT gINNY lIKE tHIS wOULD sHE nOTICE sOMETHING wRONG wITH iT?

    If you think she would, then she can grasp the concept that case makes a difference. Give her a little credit.

    1. Re:Think about it a second by PD · · Score: 2

      Case sensitivity is something that must be applied if you want to support Unicode and language independence. That benefit overrides all else. As other threads pointed out, it's not possible to be consistent about Unicode and support case independence.

  15. Re:Do what Winblowz does... by ivan256 · · Score: 2

    In windows if you name something "LETTER.txt" I nicely changes the name to "Letter.txt" for you.

    Do what they say, not what they do.

    Oh, by the way...

  16. In the meantime... by dar · · Score: 5, Informative

    For bash users: Add the following to the .inputrc in your home dir.

    set completion-ignore-case on

    Then when hitting tab to complete a filename, it will fix the case for you. i.e. typing "vi xf8" and pressing tab will get you "vi XF86Config" etc.

    --
    My other Slashdot ID is much lower.
  17. Linux file system is OBSOLETE by Jouni · · Score: 5, Interesting

    ... and now that I got your attention, let me specify that all other file systems as well are obsolete in the context of the USER INTERFACE.

    Frankly, aunt Ginny should *never* have to deal with files and file names. She should not need to know what a file is, nor choose to "save" or "discard" her work after she has written the letter to her friend Margaret. She does not know her HD from her RAM, and all for the better. She would worry to death over having her letter spun around on a magnetic disc, it would get all jumbled up for sure!

    File system is an internal, abstract and archaic database that is familiar to programmers and geeks, but a lousy way to represent data for the general user. There are few things worse than navigating a blind hierarchy of unknown folders with no contextual guide to help.

    The system should remember the letter when it is written, keep tabs on when it was written, put the subject in a "recent letters" list and generally manage the internal filing transparent to the user. The storage capacity of a modern computer can last aunt Ginny for years, the real trouble is in FINDING her data, the file names alone do little good for that.

    For a wonderful example of how well you could do without a filesystem, look at the operation of the Palm OS devices. Anyone could learn to use them. No files in sight! It's only recently that the clever engineers at Palm jumped off the deep end by adding a file system for the flash carts. Anyone who has ever used those knows what a nightmare managing them is.

    Aunt Ginny knows fsck all about file systems. Lets keep it that way.

    (Oh, and the answer in the context of user interfaces? Go for the most HUMAN representation. People are not very sensitive at all to upper/lowercase letters. We should not punish them for this.)

    Jouni

    --
    Jouni Mannonen | Game Designer, Consultant
    1. Re:Linux file system is OBSOLETE by heikkile · · Score: 2
      File system is an internal, abstract and archaic database that is familiar to programmers and geeks, but a lousy way to represent data for the general user.

      Just like democracy - it is a bad system likely to go even worse. Its only defence is that all the alternatives seem to much worse...

      --

      In Murphy We Turst

    2. Re:Linux file system is OBSOLETE by joto · · Score: 2
      For a wonderful example of how well you could do without a filesystem, look at the operation of the Palm OS devices.

      I disagree. I think the missing file-system on Palm devices reduces its usability a lot.

    3. Re:Linux file system is OBSOLETE by Kidbro · · Score: 3, Insightful

      People are not very sensitive at all to upper/lowercase letters.

      lEt ME asK yOu OnE thiNG jOUNI, arE yOu aBSoLuTElY SURe abOuT thAt?

      I know for sure that I am sensitive about it, and it really gets on my nerves when they're not used properly. Of course, people are different, but most [non 1337 script kiddies] people do care...

    4. Re:Linux file system is OBSOLETE by El · · Score: 2

      Exactly which Linux file system are you refering to? Last time I check, Linux supported at least a dozen different file systems, including ones that mimic the silly behaviours of OS/2, Windows, and Macs...

      --

      "Freedom means freedom for everybody" -- Dick Cheney

  18. Not a troll.. by TheTomcat · · Score: 2

    I'm actually a bit nervous posting in this thread, because the whole thing reeks of flamebait, but:

    What about a common toolkit (common-dialogue) system that automagically lower-cases all filenames when entered in the common dialogue?

    ie, if KDE/QT or GIMP/GTK+ automatically lowercased any filenames saved or loaded through its common file-loading dialogues.

    This would have to be easily turned off, but would solve the problem for most non-power users, while other users could turn it off, and never have to deal with it again.

    Just an idea.

    OTOH, people are probably already somewhat used to this. If I go to http://slashdot.org/CoMMenTs.pL, I get a 404.

    S

    1. Re:Not a troll.. by Stary · · Score: 2
      OTOH, people are probably already somewhat used to this. If I go to http://slashdot.org/CoMMenTs.pL [slashdot.org], I get a 404.

      yes, but not if I go to http://sLaShDoT.OrG. And really, how often do "people" (as in average users) type in something more complicated than www.cnn.com?

      --
      Tomorrow will be cancelled due to lack of interest
  19. Big question... by inkfox · · Score: 2
    My big question is - when have case-sensitive filenames ever worked to your advantage?

    I like the system "correctness" of different ASCII values being treated differently. But the practical value escapes me.

    That said, a large number of systems would break if the scheme changed. Given that most users use GUIs and rarely actually type names, is there a good reason to switch at this point? The few places where I see a true advantage (Windows compatibility, for example) have already handled this at the application layer.

    --
    Says the RIAA: When you EQ, you're stealing bass!
  20. .inputrc by ntr0py · · Score: 2, Informative
    Special shells for novice users, that can simplify much of the complexity may be the way to go, here.


    Just put this:
    set completion-ignore-case On
    in your ~/.inputrc. Tab-completion will then ignore case.
  21. Aunt Ginney won't care! by zulux · · Score: 3, Insightful

    It's not like your aunt is going to use Emacs - she'll just point and click with whatever graphical software she is using.

    Leave case sensitivity alone - it's the right thing to do, just hide any ease-of-use problems it may introduce with a GUI.

    That keeps the smart people happy, and the dumb people happy. We're all happy!

    --

    Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.

    1. Re:Aunt Ginney won't care! by ceejayoz · · Score: 2

      It's not like your aunt is going to use Emacs - she'll just point and click with whatever graphical software she is using.

      What about when she saves a file as "Letter.txt" when there's already "letter.TXT" in the directory? It'll let her do that, but the fancy GUI isn't going to tell her which one is which when she goes to open them later.

    2. Re:Aunt Ginney won't care! by zulux · · Score: 2

      What about when she saves a file as "Letter.txt" when there's already "letter.TXT" in the directory?

      The Gui should politly as her for a diferent name.

      All OS level tools and services expect diferent names to be, well..., diferent. This is correct behaviour. If a particular application has users that can't handle this behaviour, then the application itself should deal with it.

      And, thats assuming that people are too suupid to make the disctinction that "Letter.txt" is diferent than "lETTER.TXT" - I don't make that assumption about my users and they are happy. Maby, I've just gotten lucky to have useres with an IQ greater than a worm.

      I've always deplored the way GUI designers attempt to hide difficult aspects of computing with gloss - "My Documents" and "My Network Places" get in the way of undrestanding and mastery. They look good in theory, because the GUI concepts help a new user - but the cause all sorts of brain damage down the road. The poor user starts to think that there are two places where their documents are stored - c:\documents and crap\users\some hidious directory\user #2\my documents" and "My Documents".

      Evil.

      My useres are happy to know that their documents are "/home/user/" Bing. Done. End of story. Takes ten seconds to explain, and dosen't cause a headache.

      --

      Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.

    3. Re:Aunt Ginney won't care! by Kredal · · Score: 2

      woah woah woah... aren't my documents also in the "~" directory?

      I coulda sworn I saw them there. (:

      --
      Whoever stated that signature sizes should be limited to one hundred and twenty characters can just go ahead and kiss my
  22. I vote vor consistency by linuxwrangler · · Score: 2, Insightful
    And probably, reluctantly even after years of *nix use, for case insensitivity.

    As Donald Norman has commented, if lots of people use something incorrectly there is probably a problem with the design, not the people. I will admit to having on more than one occassion typed "less readme" instead of "less README" or scrolled through a file listing and overlooked a file that was sorted elsewhere due to capitalization.

    Even worse is the fact that subparts of an item follow different rules. For example:
    http://slashdot.org/index.html == http://SlashDot.ORG/index.html
    due to required case-insensitivity of domains,
    http://slashdot.org/index.html != http://slashdot.org/Index.html
    unless the underlying OS/web/app-server chooses to interpret them as equivalent.

    As some have commented, everyone sees a difference between joe doe, Joe Doe, JOE DOE and jOe doE but they all know that in every case we are referring to the same person. In fact many places standardize on all-caps for the family name in forms and documents to reduce errors.

    To those who say that the problem should be solved on the application level: consistency is good - a user should not have to remember the quirks of each application. Even if one is a slave to point-and-click GUIs there are problems created by sorting and the possibility of multiple files with the "same" name.

    Windoze is also brain dead. Although it is case insensitive, it also changes the case of file names in one of its many misguided attempts to "help" the user.

    My preference would be to have the OS keep the filename in whatever form of caps/lowercase that I choose but to treat files in a case-insensitive manner.

    --

    ~~~~~~~
    "You are not remembered for doing what is expected of you." - Atul Chitnis
    1. Re:I vote vor consistency by Ster · · Score: 2, Informative

      [QUOTE]
      My preference would be to have the OS keep the filename in whatever form of caps/lowercase that I choose but to treat files in a case-insensitive manner.
      [/QUOTE]

      HFS, the file system used for all versions of Mac OS, does this. I think this is generally referred to as "case perserving but insensitive". Mac OS versions from 8.6 on also support HFS+, which adds support for longer filenames and other stuff. Mac OS X can also use UFS, which is fully case-sensitive.

      -Ster

    2. Re:I vote vor consistency by geekoid · · Score: 2

      Say I need to file a name Joe Doe, and an anacrynym
      Jave Object Enterprise Dept. Of Energy. they both need to be in the same directory, Joe Doe being the tech lead, now what do I do?

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  23. You're trying to protect people from themselves by twoflower · · Score: 2

    This boils down to you're trying to protect people from themselves -- and it won't work, because it can't.

    Why assume people are idiots? Why not assume they'll be able to tell the difference between upper and lower case letters? The only reason case equivalency is intuitive is because it's what the system they currently use does it that way.

    --


    --
    Twoflower
    1. Re:You're trying to protect people from themselves by night_flyer · · Score: 2

      Why assume people are idiots?

      Outlook viruses... need I say more?

      --


      Thanks to file sharing, I purchase more CDs
      Thanks to the RIAA, I buy them used...
    2. Re:You're trying to protect people from themselves by ceejayoz · · Score: 2

      Why assume people are idiots?

      You haven't worked tech support, have you?

  24. Passwords by Bastian · · Score: 2

    Correct me if I'm wrong here, but that would mean that passwords should be case-insensitive, too. This problem is even worse on passwords, where one isn't given a list to choose from and actually has to memorize the case of characters.

    Personally, though, I think that's a bad idea. The little piece of BOFH in me says any user who can't remember letter case has a lot of learning to go through before they should be allowed to use an expensive piece of equipment such as a computer, and the case-sensitivity of passwords is an excellent automated way to ensure that this is in fact what happens.

    1. Re:Passwords by Bastian · · Score: 2

      Please forgive me, maybe I made too large of a logical jump for some people.

      The implication wasn't that any rules that apply to filenames should apply to passwords, too. I was saying that, if people have a difficult time with the fact that 'foo' 'FOO' and 'Foo' are three different words in a filesystem context, it would seem that they would have similar problems with passwords.

      Only they don't.

    2. Re:Passwords by topham · · Score: 2

      Actually, people do have similar problems: when they give other people their passwords.

      Generally, passwords are a secret retained by the individual in limited quantities. It is not difficult for someone to remember wether or not they used upper case characters in their password. Typing passwords is partly about remember the letters in the password and partly about the motoskills to type the password. How many times have you realized you weren't sure of what letters were in your password, but knew if you had a keyboard in front of you you could type it.

      The moment you start exchanging information with someone the issue of case sensitivity rears its ugly head. The moment you access a file you created 4 years ago the issue of case sensitivity rears its ugly head.

      It isn't the file you accessed yesterday. Its the file you haven't accessed for 2 months. It's the file Joe own the hall sent you. Etc.

    3. Re:Passwords by Stary · · Score: 2

      My point was that there's actually a reason for passwords being a point of difficulty, while there's no reason whatsoever for keeping the filesystem difficult. In fact, there's no reason to think that a user would connect passwords to files - an average user would almost never type the name of an existing file - only new files.

      --
      Tomorrow will be cancelled due to lack of interest
    4. Re:Passwords by walt-sjc · · Score: 2

      There is still an assertion here that case sensitive file names is hard. This is just FUD. Bull crap. Horse hockey. I have NEVER EVER met anyone that can't handle the concept. My 80 year old dad can handle it, my 8 year old nephew can handle it, Every Single person I worked with can handle it (even people I consider too stupid to pour a glass of water.)

      IT'S NOT A PROBLEM.

      Can someone please point the /. community to the research which shows that people are unable to handle the concept of case sensitivity? Oh. There ISN'T ANY? Hmm.

  25. Unix has it (almost) right by alispguru · · Score: 2
    In theory, you can give a Unix file a name of any arbitrary string of charcters. In reality, there are several characters that won't work, or will work at the raw file system level but be unreliable or plain broken above that. In rough order of obviousness, they are:

    \000 - Putting a zero byte in a filename will break any program written in C.

    '/' - A filename with an embedded slash will be unusable except by programs that walk directory contents very carefully.

    white space - Filenames with embedded white space work with most basic system commands, but will break shell scripts that aren't prepared for them (which means most shell scripts).

    --

    To a Lisp hacker, XML is S-expressions in drag.
    1. Re:Unix has it (almost) right by photon317 · · Score: 2


      Yeah most current software doesn't deal well with these as well as other control characters - but it's conceivable to make them work, by using wide characters and unicode-aware stuff in your C code, and maybe revamping a bash-variant to do the same. I'm pretty sure glibc has the right functions in there, just most people don't use them - they prefer to live in an ascii dreamland.

      --
      11*43+456^2
    2. Re:Unix has it (almost) right by gehrehmee · · Score: 3, Insightful
      white space - Filenames with embedded white space work with most basic system commands, but will break shell scripts that aren't prepared for them (which means most shell scripts).
      Unfortunately, any such script will break on alot more then just whitespace. Failing to catch this sort of thing is a bug in the script or application, not a shortcoming of the OS or filesystem.
      --
      "You know, Hobbes, some days even my lucky rocketship underpants don't help" -- Calvin
    3. Re:Unix has it (almost) right by pthisis · · Score: 2
      In theory, you can give a Unix file a name of any arbitrary string of charcters

      Umm, no.

      • \000 - Putting a zero byte in a filename will break any program written in C.
      • '/' - A filename with an embedded slash will be unusable except by programs that walk directory contents very carefully.


      These won't work at all. The filesystem forbids them.

      The comp.unix FAQ does address the case of an old, buggy NFS daemon that could be coerced to create a filename with a '/' in it, but Linux has never had such a thing at it was definitely a bug and not intended behavior.

      Sumner
      --
      rage, rage against the dying of the light
  26. Windows doesnt care. by BenTheDewpendent · · Score: 2

    Windows doesnt care what the case is 'B' is the same as 'b'. your aunt shouldnt be using unix.

  27. Don't Dumb Down by nuggz · · Score: 2

    I agree, why would we want to dumb it down?
    It would be less functional not more.

    Also notice it is "make it like what I used to have" rather then just suggesting making it case insensitive, seems like it is laziness, not a well thought out reason.

  28. Re:Well, it's not like the OS chooses case for you by Cy+Guy · · Score: 2

    On my Mac, if I type "Letter.txt" or "lETTEr.TxT", it is preserved and displayed in this manner. But if I want to find this file and I look for "letter.txt", the computer isn't going to tell me there isn't any.
    In this circumstance the OS doesn't have to enter into the equation. Since what you are referring to is the search program, which is distinct from the OS. A search program could easily be programmed to default to being case insensitive (as the search in Windows is) and only discriminate on case when selected by the user.

    Or if I try to name one file "letter.txt" and another "letter.TXT", it won't let me put them in the same directory.

    Again, this could be addressed in the interface rather than the OS. Remember that with 32 bit Windows systems all files have three names, their long file name, their case sensitive long file name and the DOS (8.3) file name. As far as the OS is concerned you could get by with just one of these, the rest are just interface enhancements (I think that the OS in fact does this ignoring two of the name forms and using the third as the basis for locating files on the physical drive - the actual work of the OS.)

    So really the question is could a *nix SHELL be created that is case insensitive, and could *nix file utilities be set to be case insensitive by default. And the answer to both of these questions is YES and YES, and the source code is out there should there be someone with sufficient interest and skill. You wouldn't the OS itself (i.e. the kernel) to be case insensitive as it would only remove capabilities and slow it down.

  29. ASCII Centric by Detritus · · Score: 2

    What about non-English languages? What about accented characters? It seems to me that an internationalized version of case-insensitivity could be very complicated and inconsistent.

    --
    Mea navis aericumbens anguillis abundat
  30. Re:But English isn't actually used that way... by tommck · · Score: 2
    OK, replace the word...

    Some people call wisened leaders Elders. As a title, the word is capitalized. So, "elder Tom" means the older of two Toms and "Elder Tom" means the Elder named Tom.

    The church" on the corner is a building...
    The Church is the organization/establishment (i.e. "The Catholic Church").

    T

    --
    ---- It puts the lotion on its skin or else it gets the hose again. It does this whenever it's told.
  31. Re:Well, it's not like the OS chooses case for you by Dephex+Twin · · Score: 2

    But when it is represented inconsistently, people will get confused IMO. You're right about how the search program could be case insensitive. But what if someone writes a file and names it "letter.txt", intending to overwrite the original file, which they happened to have named "Letter.txt" before. The file is saved, and now there is "letter.txt" as well as "Letter.txt" in that directory. Maybe the application accounts for this as well. But every single hole to the "real" UNIX filesystem has to be patched up, and the user has to be shielded from ever finding it.

    Not a horrible situation (as you said, DOS+Windows works that way), but IMO not the best situation. I think a case-preserving (only) system would be the best, because it is much easier to use for the normal person, and it would mean this case-issue would be consistent system-wide.

    And what is lost? It may be difficult to convert everything over, which is not to be ignored. But just talking theoretically, how is this a worse filesystem (eg what is the advantage to having "Aaa.txt" exist in the same directory as "AAA.txt")?

    mark

    --

    If you want to make an apple pie from scratch, you must first create the universe. -- Carl Sagan
  32. Re:Will someone with coding skills... by Stary · · Score: 2
    Ooh. I don't think that's a good idea. I suspect that renaming XF86Config to xf86config will have a very bad affect on XFree.

    Not if something is done to the system to let XFree open the file with the name XF86Config...

    --
    Tomorrow will be cancelled due to lack of interest
  33. This post is incompatible with reason. by Tom7 · · Score: 2

    I think Ayn Rand would disagree .

  34. Re:Application implementation by hubie · · Score: 2

    The kind of search you are talking is way overkill. Your search program simply reads each filename and converts the name to all upper or all lower case before it compares to the simarly-converted requested file. See for instance these C library functions. Your program is only a few lines, and it only need pass through the directory once.

  35. To rephrase the question.... by Dannon · · Score: 2

    Two 'b's, or not two 'b's?

    --
    Good judgment comes from experience.
    Experience comes from bad judgment.
  36. Re:Hypocrisy by PD · · Score: 2

    You're the one insulting people's intelligence if you think the problem is that they don't grasp the ability to even distinguish upper- and lowercase.

    You wouldn't know what an insult to intelligence was. By definition, it can't happen to you.

    My comment was in fact stating the very opposite of what you think it stated.

  37. Re:What do Polish polish? by dutky · · Score: 2
    Nonesense, capitalization has nothing to do with it, only context is important. Consider the following sentence:
    Polish you shoes or there will be hell to pay.
    I'm sure you understood that perfectly well. It's all about context, not the case of the letters involved. Similarly, you can perfectly easily undertand the following:
    POLISH OFF YOUR POLISH SAUSAGE BEFORE YOU GET SECONDS.
    Again, caplitalization is meaningless, the context tells you which word is intended.

    All that said, capitalization or other letter-forms can carry more information in other languages than in English. Diacritics can completely change the meaning of a character (English speakers don't have this, but it is important in most other European langauges and vital in some asian languages).

    The question, really, is language specific, and is a real pain in the butt if you want to properly sort and compare strings for international usage. A related issue has to do with ligatures and glyph transformation in some middle-eastern languages: the same word can be spelled differently depending on it's position in a sentence or relative to other words.

    There is, unfortunately, no simple solution to these problems.

  38. The way to implement this by heikkile · · Score: 2
    In my humble opinion, if this is the way to go, we should do the following:
    1) keep the file system as it is.
    2) Create a new system call fiopen (*) that would open a file in a consistent way, mathing actual case first, and if that failed, various alternatives, probably depending on the locale, and a number of other things. The details to be sorted out in a horrible flame war ;-)
    3) Use this call in standard GUI components. Applications will follow naturally.

    The important thing is to figure out the one right way to handle the case insensitivity correctly and consistently, and possibly leave the old stubborn user a way not to be forced to use it if he (**) so prefers.

    Notes:
    (*) As in stricmp, etc
    (**) Since the English language requires me to choose a gender for an unknown person, I have here chosen the male, as is often common. Normally I consider users female, to remind me to go out of my way to be nice to them. Chauvinist or gentleman - your choice.

    --

    In Murphy We Turst

  39. Re:Application implementation by hubie · · Score: 2
    that would actually be much faster and take less computation than having the OS generate a list and then convert them all to a common case.
    Actually, there isn't a need to read in and build a list of file names, convert them all into another list, then search through that. You just do the conversions on the fly. It doesn't take any longer because you are going to look at all the filenames anyway.

    Anyway, I think I understand your point, but I guess I just fundamentally disagree. I hate it when programs like Windows keep making assumptions about what I want to do. The only useful thing I have found is when I mistype "the" as "teh" in Word and it corrects it for me. However, when I want to create a folder called "QNX" so that I can put in QNX-related software, I don't want it insisting that it should be named "Qnx." Do as I say, not as what you think I want!!! As someone who programs, I also find it useful to tell the difference between the files foo.c and foo.C (and my compiler finds it useful too).

    In the case that you mention, I just don't see the problem. If I'm looking for a file letter.txt and my search routine comes back with Letter.txt, letter.txt, and Letter.Txt, then I (and Aunt Ginny) should know what file we want opened. If not, then we should open all three to see which one we want. If Aunt Ginny started a file letter.txt and later "Save As" it to Letter.txt, then that is a problem she has to work out. It is the same as if she later saved her file as lettre.txt. At some point she'll have to reconcile her errors.

    I never had a PC until about 8 years ago. I cut my computer teeth on a VAX system and got used to case-insensitive filenames. When I moved to Unix/Linux systems, it was just a minor difference to get used to. A lot of people make the argument that Linux will only be popular if the UI is exactly like Windows, but I disagree. Anyone should expect a learning curve when moving from one OS to another (even Aunt Ginny). Move Ginny from Windows to a Mac and you'll have to explain to her how some of the things she wants to do are different. Look at the differences between the various Windowses, but people have had little problem moving from 3.11 to Win95 to WinXP, etc. Microsoft just has the genius (and $$) to market the idea that it is a revolutionary and great step and people accept it and learn it. Remember when Win95 came out? The Mac users were annoyed to no end because Microsoft was touting their new point-and-click-and-drag GUI as incredibly revolutionary and the greatest breakthrough in computer history.

    I think that it is the idea of moving to a different OS and not some silly minor UI differences that keep people from actually doing it.

  40. One word: NO! by dh003i · · Score: 2

    NO!

    B != b

    There is a very good reason why UNIX is case-sensitive, or at least I can think of a very good reason to keep it case-sensitive.

    In biology, writing out a protein name in all uppercase letters indicates the wild-type GENE (i.e., VAC8), while writing it in lowercase letters indicates a mutant of the wild-type gene (i.e., vac8). This is just a specific example. In other words, there are many instances where case matters.

    VAC8 is not the same as vac8 (one refers to the wild-type gene, the other to a mutant).

    Federal is not the same as federal (one, I believe, refers to specific federal entities, the other to the idea there-of).

    Bush is not the same as bush (one is the President, the other is a plant).

    Banks is not the same as banks (one is a last name, the other is a financial institution).

    Come on. Its not that difficult for people to grasp the concept that a file named dave is not the same as one named DAVE. If certain users really don't like that, then they should disable cap-sensitivity (I'm sure there are options to do such).

    There is a lot of talk about making Linux easier to use for the average person. Just as easy -- and an effort which would not require programming skills -- would be to make the average user more Linux-savvy. This is what a large part of the Linux community (known as gurus) does. It means you don't say rtfm to every question, though it is good to try to help people figure things out for themselves, rather than telling them the answer.

  41. Re:Well, it's not like the OS chooses case for you by Cy+Guy · · Score: 3, Informative

    what is the advantage to having "Aaa.txt" exist in the same directory as "AAA.txt"

    Because the file name Aaa.txt is "0x41 0x61 0x61 0x2e 0x74 0x78 0x74" in hexadecimal which is not the same as "0x41 0x41 0x41 0x2e 0x74 0x78 0x74" the hexadecimal equivalent of "AAA.txt".

    When you get down to the core operation of the kernel, it shouldn't be burdened with having to do conversions of 0x41 to 0x61. If some one writing an application wants to make that distinction, that's fine (and could easily be incorporated into programming libraries), but it shouldn't be the job of the OS.

  42. Well... by joto · · Score: 2
    I've never ever seen a beginner having a problem with case-sensitiveness. Any sane, rational, thinking person will see that there are both advantages and disadvantages to both approaches. And once you tell the end-user how your system work (s)he will accept that, and don't worry about it.

    The only people who care about minor, but unimportant differences like this are techies, because they are already accustomed to a certain style, and because it is a religious issue they can discuss till the end of time, like vi/emacs, windows/mac/linux/, gnome/kde, etc...

    More importantly, I don't care about how user-friendly the command-line is for someone getting confused about case-sensitivity. Users like that should be strapped to their idiot-interface which we can create on top of Unix as well as on Windows. One good example of such an interface is called Bob.

    Even todays computer interfaces (which isn't exactly completely suitable for complete morons (noticed the amount of courses for beginning windows users?)) doesn't require you to type a file-name more than once (at first "save"). After that, it's point and click.

    My mother can't even use a mouse, or remember the difference between backspace and delete from each time she uses the computer. But I assure you, case-sensitivity is not an issue. There are many things that are confusing her, but understanding that you should use the same name in the same case is not one of them.

  43. Re:Hypocrisy by PD · · Score: 2

    God forbid you should respond to the points I made.

    That applies to you. Your first message in the thread was an obvious misunderstanding of the point I made. Why not make another attempt at a coherent reply to the actual point I was making?

  44. Re:Application implementation by joto · · Score: 2
    As you say, there is no convention. And that means that people using .C instead of .cpp, .cxx, .cc or anything else can easily change. It doesn't matter. Renaming all the files in a 1e6k-loc project will take you about 7 minutes (including writing a script to recursively find Makefile's, and sed your way through them).

    The only reason for not having case-unsensitivity in the kernel, is to not complicate the kernel, and keep policy out of the kernel. This, on the other hand, is a good reason.

  45. Re:Will someone with coding skills... by joto · · Score: 2
    And there's no way of telling wether a command has come from a user or a process?

    Correct.

  46. The Real World by WallyHartshorn · · Score: 2, Insightful

    Wow. Nearly every reply in this thread is an example of how techies are not like normal people -- and yet don't realize it. Despite your wishes, the non-techie world is not going to accept that "Letter.txt" and "LETTER.TXT" don't refer to the same file. If I received a check made out to "WALLY HARTSHORN", would you say that I cannot cash that check because my name is "Wally Hartshorn"? Would you say that "Ford" is a different company than "FORD"?

    Like the original poster, I am a former Amiga user, so I am quite familiar with the experience of a file system that allows mixed-case filenames, but recognizes that they are equivalent. It was far, Far, FAR nice than having to remember whether I named the file "Letter.txt", "LETTER.txt", "LETTER.TXT", or "letter.txt". Like nearly everyone else, I remember words much more readily than I do specific capitalizations.

  47. typing by battjt · · Score: 2

    The sooner UNIX-based computers learn that when a person is looking in a directory for "letter.txt" that "Letter.txt" is probably what they mean, the sooner they (the computers) will understand how to interact with people.

    And shouldn't that be the point of it? Not the other way around.


    right.... How many GUIs have you designed. Users are not logical at all. After we remove case, they'll ask that 1==l==i==t, then a==e==o==0==D==c==Q, then d==b==p==q then s==z then j==i, then g==q==j, then R==K==h and P==R and E==F and b==S and m==n and u==w==v and w==m. Now we are down to two letters x and the other stuff.

    Why screw up a working system and not fix the root cause. The root is that the user is incapable of specifying the file by typing. Duh, use a search panel that handles the rules and presents a big button [IS THIS YOUR FILE STUPID?].

    Joe

    --
    Joe Batt Solid Design
    1. Re:typing by battjt · · Score: 2

      A user has to type names of files sometimes. They just do.

      Give me an example. Even in Unix I hardly ever type a filename. I use simple search routines like in bash or more complex regex patterns.

      I use shells like emacs, Mozilla or Explorer to select files most of the time.

      Joe

      --
      Joe Batt Solid Design
    2. Re:typing by battjt · · Score: 2

      huh? If I am creating a file, then why does case matter?

      I'm suggesting that you don't need to type files. I think that GUIs that require typing a filename are broken.

      I use emacs, gimp, ant, the JDK, bash, WinNT, Linux, mozilla, Konqueror, gv, outlook, etc. I hardly ever type a file name (except when creating a file, but that isn't typing the name of an existing file); I use tools that allow me to bypass the typing. Why not fix your (or who ever's) toolset so that no filename typing is required?

      I open my invoices with soffice ~, then click invoices, then the particular invoice. I do the same to open images in Konqueuor or java files in emacs.

      Joe

      --
      Joe Batt Solid Design
  48. Re:One word: NO! by TFloore · · Score: 2

    Banks lend money to Mr. Banks.


    Hmm... Banks and Banks are different too. Oh my. That can't be good.


    Banks lend money to other banks.


    Even worse. Banks and banks *are* the same here. That can't be good either.

    Would you like to re-design the English language?

    A lot of information in language comes from context. In a filesystem, context is, unfortunately, usually lacking. Rather, context is usually provided by the directory/path and the file extension. That is insufficient information to tell the difference between /usr/home/letter.txt and /usr/home/Letter.txt.

    This discussion isn't properly about capitalization... it is about context (i.e., metadata) for files.
    --
    This is my sig. There are many like it but this one is... Oops. Frank, I've got your sig again! Where's mine?
  49. Re:Do what Winblowz does... by joto · · Score: 2
    The reason it behaves this way, is because FAT only used uppercase names, while VFAT allows more reasonable filenames. So files in all uppercase are automatically converted to lowercase since it is likely that it is the result of having travelled on a FAT (not VFAT) medium. And only uppercase is usually annoying.

    There is no difference between directories and files. It's just that usually, you don't use file extensions on directories, but if you call you directory QWERTY.txt, case will be preserved.

    And, like most annoying behaviour in Windows, there's a way to turn it off: Tools->Options->View->Allow all upppercase filenames. Given the alternatives, I think windows actually did the right thing here. Mainly since the filesystem doesn't care about case anyway, and manually renaming 200 files with uppercase names is annoying. I'd much rather have the system take a guess at something more readable, and have an option to turn it off, if I really want my ALL_CAPS filenames.

    Next week, come back to Ask Slashdot: Should filenames be 3117-zP34k-4vv4R3

  50. Re:What do Polish polish? by dutky · · Score: 2
    Yeah, yeah, and "We sent our daughter to a pretty yough girls school." So you've shown that you can construct pathological cases of English sentences that demand more than one sentence of context in order to be fully understood. My point, however, stands: The word "POLISH" does not depend for it's meaning on the capitalization of the first letter (or any other letter, for that matter), otherwise, you couldn't use it, meaningfully, as the first word of a sentence. Capitalization, in English, bears very little relation to word meaning.

    That said, however, the conceit that capitalization is either vital or useless for word meaning is an entirely parochial prejudice. Rules that work well in English may be entirely wrong for another language. If we are going to talk, usefully, about how to manager the sorting and comparisson of file names, we need to consider more than just English usage.

  51. Re:Well, it's not like the OS chooses case for you by theCoder · · Score: 2

    What about "Aaa.java" vs. "AAA.java"? Java classes are case sensitive, meaning the files must be also. I know I've run into problems before with distinct Java classes that work fine on a UNIX platform (with case sensitive filenames) being brought onto a Windows platform where the two classes can no longer coexist. Sure, Java could be changed, but why should it? For some people who can't understand that "Aaa.java" and "AAA.java" are TWO different file names? I've never run into a person who couldn't understand that, once they've been told.

    Just like most of UNIX/Linux's "user unfriendliness", it's mearly a difference from what (most) people are used to in the Windows World(TM). Personally, I know I've had more problems with case insensitivity (because I wanted to have two different files with just different cases) than with case sensitive systems. YMMV.

    --
    "Save the whales, feed the hungry, free the mallocs" -- author unknown
  52. one case to rule them all by solferino · · Score: 2

    simple solution - only ever use lower case in filenames

    why have a complete mirroring of th alphabet in another case? th ancient greeks and th romans got along very nicely with just one case - th russians still do today (and perhaps still th greeks?)

    i read somewhere that th terms 'upper case' and 'lower case' are printing terms and correspond directly to th cases in which th metal type letters were kept - hence it seems to be an invention of th printing press age or perhaps goes back to th monastic penchant for illuminating certain letters to give them added emphasis

    capital letters always have this feel for me - a kind of victorian sensibility of 'This Is A Very Special Word Which You Must Respect And Hold Dear In Your Heart' - a some words are more equal than others kind of approach - very like that irritating practice of capitalising him and he when referring to Certain August Fictionalities in th bible

    and yes, to forestall yr reply of capitals increase legibility - i am aware of that argument, however i think th present model of capitalisation at th beginning of a sentence is tired and could do with some creative alternatives

    1. Re:one case to rule them all by solferino · · Score: 2

      thank you for yr reply - it made me think a little more about th subject than i had before

      yes you are right that there are two versions of all th greek letters - i felt foolish when i read yr reply as i had forgotten this fact - however i am not sure if they were used as we use our 'upper case' and 'lower case'

      before writing more on th subject extemporaneously i want to do some further searching on th internet and thinking - my thought processes at th moment are running along the lines of an initial script designed with high legibility of each letter - evolving into a second more cursive script which is less 'blocky' and easier to write and which increases legibility of whole words rather than th individual letters - and later these two scripts being combinded according to certain rules which vary from language to language when printing was industrialised

      one interesting source on this topic i have found so far is here

      let me know if you want to continue this discussion further - cheers

  53. Re:Hypocrisy by toast0 · · Score: 2

    domain names are case insensitive, however, usernames are often case sensitive.

    Also, in going with cnn as the example...
    http://robots.cnn.com/ALLPOLITICS/ shows all the political news... however http://robots.cnn.com/ALLPOLITICs/ shows 'not found'

    most portions of the url other than the domain name are in fact case sensitive, although this depends on the server running the resource.

    (slash may murder those links, but you should get the point)

  54. Re:Hypocrisy by PD · · Score: 2

    First of all, my rudeness to you is a response to your rude post. You seem to dish it out just fine, but when I throw that shit back in your face you cry foul. Who's the hypocrite?

    You seemed to make the point of "sHE kNOWS wHAT iS wRONG wITH tHIS", therefore, she should be able to tell the difference between different capitalizations in the file system, and we shouldn't assume they are dumb.

    There, you have correctly stated my point. You get a cookie.

    It doesn't matter for email addresses and (most) URLs.

    That's right, and they are broken. We've got to fix that problem right away. I'm serious.

    And maybe that's fine... maybe you don't want to encourage the mainstream users to use unix. Because then you do have to deal with stuff like that.

    Maybe you like to pull hypotheses out of your ass? Maybe you like straw men? Maybe that really IS a monster under my bed? Or maybe I never said that, I never implied it, and you just made it up.

    Don't join the Army. You'll have a very hard time if you try to interpret the Sarge's orders as loosely as you interpret what I write.

  55. Re:One word: NO! by geekoid · · Score: 2

    please explain the difference in context of your example. /usr/home/letter.txt and /usr/home/Letter.txt.

    For ease of use, only 2 things are needed, programs that remember a history, and the ability to search your HD with an case insensitve search.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  56. Re:Will someone with coding skills... by geekoid · · Score: 2

    Incorrect.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  57. Case insensitivity requires globbing in the kernel by tlambert · · Score: 2

    Case insensitivity required globbing in the kernel. UNIX has historically done all globbing in user space, and passed only literal values to the kernel.

    Case folding on storage is realtively easy (Just Do It(tm)), but case folding on lookup for system calls that take explicit names (open, stat, creat, rename, unlink, etc.) requires that the literal value passed match multiple potential values as soted in a directory.

    Doing globbing in the kernel is actually more efficient in a lot of ways (consider that when doing an "ls -c", rather than pushing the whole directory contents over the user/kernel boundary via the getdirentries/getdents system calls, you would push only names which matched the expression, drastically reducing the protection domain crossing overhead).

    However, POSIX practically *demands* that you not do your globbing in the kernel.

    Apple gets around this by force-folding. Basically, it is case sensitive on storage, and case insensitive on lookup (Windows outside the legacy 8.3 namespace is the same). The problem with this, as you would know, if you had ever written internationalized FS code on Windows to be installe dunder the IFSMgr, is that there is a requirement for "active character set case folding tables", and these are locale specific (e.g. what do you do with the Schlossen if you are in Germany vs. France, and how do you handle Hangul, Kanji, etc.).

    Basically, without destorying certain standards mandated behaviour, it's not possible. Most likely, you will not find a programmer willing to give up POSIX compliance or internationalization in order to change this behaviour.

    -- Terry

  58. Re:Cygwin by Kredal · · Score: 2

    What's the end of your sig say? Read my sig to see my feelings on the subject. (:

    --
    Whoever stated that signature sizes should be limited to one hundred and twenty characters can just go ahead and kiss my
  59. Re:Well, it's not like the OS chooses case for you by darkwhite · · Score: 2

    Two words: Unicode and upcase

    --

    [an error occurred while processing this directive]
  60. Re:Well, it's not like the OS chooses case for you by skotte · · Score: 2

    When you get down to the core operation of the kernel, it shouldn't be burdened with having to do conversions

    hm. i argue it should. actually, not the OS, perhaps just the shell. i'm not sure where this should happen. but i doubt it's at all hard, eh.

  61. No. by El · · Score: 2

    Is el nino the same as El Nino? Is the internet the same as the Internet. You're assumption is false -- the case really DOES convey essential information in most languages.

    --

    "Freedom means freedom for everybody" -- Dick Cheney

  62. Sigh... by Millennium · · Score: 2

    More people who think it's actually acceptable to have "python" and "PYTHON" subdirectories in the same dir.

    Two words which differ only in case are pronounced exactly the same way, at least in English (but also in most other language which have a concept of letter case). That's the only real determining factor. Grammar is meaningless when dealing with filenames, so capital vs. lowercase loses any real value. Thus, case-insensitive should be taken to rule the day, bec ause it more accurately reflects the way people think about filenames.

    Or, to put it another way, what is the difference between "Mary had a little lamb" and "mary had a little lamb"? Most people would say there is none, and indeed, given the massive number of people who don't use capitals in their e-mails anymore, there's some credence to that claim. If people don't care about whether things are capital or lowercase on a computer, then why should the computer itself care either?

  63. Internationalization by yerricde · · Score: 2

    Some filesystems implement case insensitive filenames, so it can't be that hard.

    Quick! You write efficient filesystem-level code to handle upcasing Unicode filenames for collation on non-Latin writing systems. It'd be easy to map [A-Z] to [a-z], but what about German, where a lowercase ß (1 char) becomes uppercase SS (2 chars)? What about Turkish, where dotted i upcases to dotted I, and dotless I downcases to dotless i? What about Greek, Cyrillic, Armenian, Georgian, and other writing systems that have upper- and lowercase letters? Can you really handle localized Unicode processing in the kernel?

    --
    Will I retire or break 10K?
  64. strcmp() vs strcasecmp() by jc42 · · Score: 2

    This has been handled for ages in the standard C library. If you want a comparison to be case sensitive, you call strcmp(). If you want case insensitivity, you call strcasecmp().

    Similar things exist in most higher-level programming languages. For example, with perl pattern matches, you add 'i' to the list of flags, and a case-insensitive compare is done. This works with locales in all recent versions of perl. And so on for other languages.

    This is an open invitation to implementers. It's very easy to to case-insensitive compares. If you are aiming your software at a user population that can't handle case distinctions, the tools are there and you have no excuse.

    Unix and its clones don't impose any policy at all on user-level software, and they supply the tools to handle case sensitivity. Use them and stop complaining.

    --
    Those who do study history are doomed to stand helplessly by while everyone else repeats it.
  65. To B or not to b by oldstrat · · Score: 2

    I'm not going to waste a lot of time on the reply.

    What, what and WhAt are all different, it's that simple. I.T. is different from it.

    It's a Simple matter of education.

    Unfortunately there is only a certain level that things can be dumbed down to... or maybe only a certain level that they should be dumbed down to.

    Capitalization punctuation and spelling, are the kinds of things that cannot be dumb'ed out of existance beyond the use of GUI's.

    1. Re:To B or not to b by oldstrat · · Score: 2

      There's something called syntax.

      Of course if you have no idea of how your 'puter works, you wouldn't be expected to know about it.

      But that doesn't stop your computer from knowing about it.

    2. Re:To B or not to b by oldstrat · · Score: 2

      Ok, I'll say it again. Letter.doc, LETTER.DOC and letter.DOC are not the same.
      File names are parsed by the OS file system.
      Texas Instruments attempted an 'intelligent' parser in the TI Professional, years and years ago. It just wasn't useful enough to spread beyond specialized fields.
      Computers are absolute literalists, and syntax (computer grammer) is more critical.
      The grammer on an advanced OS is -more- critical than on Commodore 64 generation OS.
      Of course the grownup OS has the ability to pattern match and so a "something like" when you search.

    3. Re:To B or not to b by oldstrat · · Score: 2

      Look, what the hell do I care about the internal function of a lawn mower?
      I just want it to cut the grass.
      The problem is that for it to cut the grass, it has to have a blade.
      If I put my foot in close proximity to the blade, it's going perform in an manner quite contradictory to my desires.
      It is as I said earlier a simple matter of education. Modify human (mis)behaviour.
      In the case of the mower, I watch my feet.
      In the case of the computer, for You, or Aunt Ginny it's less drastic, just remember that B and b are not the same.

      B and b are not the same, inside the computer, or outside the computer (again postulating a modern OS)... The fact that you and some others may mistakenly view them as equivalent, does not make them the same.
      Some things just are, unless we are willing to damage the function of the device, or ourselves.

    4. Re:To B or not to b by oldstrat · · Score: 2

      Well then, lets reduce the character set to just one letter, pick the first one A, uppercase, and try and force the computer to magically know what we intended.

      The fact that there is a mower guard does not eliminate the need for caution, and modification of behavior.

      Remind me to run like hell if your ever near a fire and the only available liquid is a can of gasoline, I'm not sure you would see the difference between it, and water.

      Levels of complexity have limitations. It is apparent that you -just don't get it-, and you may be right Aunt Ginny might not get it either.

      That's OK, my Grandmother never learned to drive a car and she 'got by'.

    5. Re:To B or not to b by oldstrat · · Score: 2

      If you have taken this long to reach the point of suggesting that there be an OPTION that users only be able to save in one case,
      or that the system only recognise users input for filenames as a single case... Why didn't you do it sooner?
      That IS an option in some systems, the idea of ever making it a requirement for all users would be insane.

      Make the change to Aunt Ginny's Nix machine yourself,
      after all you are an MIT educated programmer with 6 years of experiance.


      The issue as mis-stated seems not to be an OS issue, but a UI issue.
      All things given, I'd rather see myself, of my Aunt Mary allowed the OPTION of have b not equal B.
      Because once again, for the last time... They are not the same (only mistakenly percieved as almost the same), inside a computer, outside a computer, as nuke warhead component number, or in the exiration date of a deli item.

    6. Re:To B or not to b by oldstrat · · Score: 2

      I have nothing against your preference for keeping it case-sensitive, it's just as valid as the preference for keeping it insensitive.
      Don't make up technical limitations as a reason to support your preferences, though.

      I never did, make up technical limitations for preferences.
      Filenames SHOULD NOT be case fixed, end user files however could be, and could be enforced by the user file manager parser, GUI, or application, there's no reason to criple an entire OS file system for the sake of a limited set of simple minded users.

      The original message said - ", I have yet to come across anyone seriously questioning the traditional UNIX style file system name paradigm"
      Notice, it says file system name paradigm.
      You know enough about *Nix to know that the OS file system _has_ to care about case.
      I'll stand pat on my assertions about the internal issues, and I'll keep the lawnmower analogies when it comes to non-application user generated filenames, God help the *Nix programmer, or wannabe programmer that finds themselves on the system you propose, core parts of make and other common conventions in the internals would simply fail. .c and .C are very different.

      B and b, are not the same, no matter what the context is.

    7. Re:To B or not to b by DEBEDb · · Score: 2

      Damn, I just saw the "No Score + 1 Bonus"
      box for the first time, clicked on it, and
      lost my lengthy reply...

      I will go cry in the corner and try to
      reply later :(

      --

      Considered harmful.
    8. Re:To B or not to b by oldstrat · · Score: 2

      "I will go cry in the corner and try to reply later :("
      Don't bother. This has gone on way too long and has reached way past tedium, into moronisty.
      What do you say we both just drop it, and move on to something intelligent. ;)

  66. Store locale with folder by yerricde · · Score: 2

    Two different languages can have the same accented characters, but different rules about case conversion.

    And conceivably, changing the locale can cause files whose names had not clashed before to begin to clash. Thus, the locale for files in a particular folder must be stored as an attribute of that folder.

    --
    Will I retire or break 10K?
  67. Unix is international, slashdot isn't (much) by kwerle · · Score: 2

    It is my understanding that case makes a huge difference for other character sets. I'm afraid that I have no evidence to point at, but I've been told this by several people, so it MUST be true.

  68. perl vs. Perl by Webmoth · · Score: 2

    perl refers to the executable, while Perl refers to the religion^H^H^H^H^H^H^H^H programming language, which in this case, is a proper noun.

    By the same token, it is proper to write "He speaks the english language because he is English." Yes, case makes a difference.

    The question should be restated: does anyone care?

    --
    Give me my freedom, and I'll take care of my own security, thank you.
  69. What's funny is... by FurryFeet · · Score: 2

    ...when I read these comments, the quote at the bottom of the page was:

    "All of a sudden, I want to THROW OVER my promising ACTING CAREER, grow a LONG BLACK BEARD and wear a BASEBALL HAT!! ... Although I don't know WHY!!"