Certain words should always be capitalized. Immediately, PHP and XML come to mind. Other words have other consistent capitalization rules which are consistent (Java not JAVA). Would it be possible to simply for there to correct these?

As an illustration as to why proper capitalization is important — if someone were to interview with you for a .NET position, would it be acceptable for them to continually talk about the beauty of C-pound? If we're going to assert that it is important that people pronounce things correctly, then we need to be sure that we have correctly written content.

  • (Yes, I am aware that this might be difficult in situations where people think it a good idea to name their favorite Python variable php, but if someone decides to do something like that and it causes problems, I submit that it is totally the fault of the user. "If you do something that stupid, it's your own *darn* fault.") Oct 11, 2011 at 4:42
  • 10
    I'd prefer the improper casing used in the quality filter rather than fixing it.
    – user7116
    Oct 11, 2011 at 4:47
  • 1
    @cwallenpoole It's simple to deal with that.. just don't capitalize php in code. But I don't think this is high on their list, given that they haven't implemented StackOverflow -> Stack Overflow ;) Oct 11, 2011 at 5:05
  • 3
    ...and jQuery, which is frequently written as 'jquery'. Oct 11, 2011 at 5:09
  • With the number of edge cases out there, an automated process for this would probably cause much more harm than good. Oct 11, 2011 at 5:24
  • 1
    @Nightfirecat But there are plenty of times when words should not have corner cases (eg. PHP). Yes, most of the time capitalization should be left to the author, but there are many times when there should never, EVER be a corner case (eg. XML). Oct 11, 2011 at 6:25
  • 1
    A toggle-capitalization button is good too. Oct 11, 2011 at 6:46
  • 3
    C-pound? I thought everyone knew that it is called C-octothorpe! Oct 11, 2011 at 6:56
  • @MarcGravell Good show... good show. Oct 11, 2011 at 7:01
  • 2
    Definitely not in favour of auto-capitalizing 'i' - it's an excellent quality filter...
    – Benjol
    Oct 11, 2011 at 9:10
  • @Benjol I agree. I brought this up because i has been discussed but there seemed like there would be non-ambiguous times. Oct 11, 2011 at 10:37

5 Answers 5


While I don't know if you could completely automate this, I do think it could at least be caught by the review page for looking at. I'm always editing the cap-names, so I'd love that to be automated, but it might be a pretty hard task with the edge cases out there.

  • 4
    Or perhaps automatically-proposed edits. That way they'll get a lot more attention than just the /review page. We already have automatic flags for suspect posts, so I don't see why automatic edits wouldn't be appropriate. Oct 11, 2011 at 5:09
  • 1
    @Farseeker - Auto proposed edits that could be "improved", accepted or rejected as appropriate would make the work of a pedant far easier!
    – Flexo
    Oct 11, 2011 at 11:16
  • @Far, sounds like a good feature request to me. Oct 11, 2011 at 13:08
  • Sounds like a good idea for a script! :D Apr 14, 2014 at 21:48
  • There will probably be too many false positives with simple word lists. (But I have a long list.) Jul 20, 2018 at 14:49

In all seriousness, I'm not sure that xml vs XML is the most significant part of either a question or an answer; I'm far more interested in the conveyance of intent (which is, let's face it, the purpose of language). I can also see a range of possible edge cases and corner cases, that could make it hard for new users in particular, for example:

  • talking about a variable called xml - yes you and I know it can be back-tick escaped, but new users don't know that
  • talking about external references such as (invented) the "JAVA and xml cookbook". Now, it doesn't matter whether those are correct/incorrect - they are being cited
  • posting unindented code blocks, etc
  • talking about things like the Xml namespace in .NET

I can think of a lot of ways this could add confusion, and a very limited number of ways in which it adds genuine value. I also suspect that the number of "usually unambiguous" cases (i.e. where it would even be possible to apply such a rule) is vanishingly small. If a question talks about xml - I understand immediately what they are talking about. I'm genuinely not sure that this is something that needs fixing...?

  • Well, I was thoroughly unaware that such a namespace existed. I chose that as something which appeared completely unambiguous. Apparently, it is not. Oct 11, 2011 at 10:36

Whether you should capitalize initialisms is about as settled as whether or not group entities should be referred to as singular or plural nouns.

Perfect example: Wikipedia disagrees with you that "Ajax" should always be capitalized.

This seems like micro-optimization gone wrong. The system should only correct things that make questions unreadable, not minor stylistic niggles.

  • I changed it to XML. I don't know if you want to edit your answer because of that. Figure I'd give you a head's up. Oct 11, 2011 at 6:27
  • 1
    As to minor stylistic niggles, well, I will disagree. It is as wrong to have JAVA as it is to have someone pronounce it C-pound. Oct 11, 2011 at 6:30
  • @cwallenpoole Does it make it any less clear whether Java is capitalized or not? You still know it's Java. It's not the same as people adding filler content, wording things in vague ways, or wall-of-coding their questions: all of which make questions harder to read or answer and are justifiably filtered.
    – user149432
    Oct 11, 2011 at 6:37
  • On the other hand, does it make it any less clear if someone pronounces it C-pound? You know that they mean C#. Oct 11, 2011 at 6:46
  • @cwallenpoole Thankfully, we use the written word on Stack Exchange: you can pronounce C# however you'd like and still communicate effectively here. "Java" vs. "JAVA": not seeing how having the latter makes a question difficult to read.
    – user149432
    Oct 11, 2011 at 6:52
  • 1
    That serves as an illustration. That which is wrong, is wrong. If we want good quality in questions paired with good quality in answers it is beneficial to consider this as a problem. Grammatical errs (even small ones) are distracting. I have difficulty seeing how JavA wouldn't bother most at least on some level. Oct 11, 2011 at 6:58
  • @cwallenpoole That's why we allow anyone to edit a question or answer, to make it clearer. But automatic correction and filtering is reserved only for when a post would be unreadable unless corrected. That's not the case here: it's a minor issue that can handled after the fact.
    – user149432
    Oct 11, 2011 at 7:10

I'd be curious to know 1) how often this kind of "mistakes" are made 2) how many people actually care about these mistakes being made. Without this information, this is just a solution looking for a problem.

Additionally, if someone writes "JQUERY" or "JaVa", usually the rest of their question is of a poor quality too, so it's not by fixing some minor capitalization mistakes that the question is going to be improved.


It seems that there are several prominent positions which are currently being expressed. I will do my best to summarize the camps.

Those who believe that action is needed hold two axioms:

  1. There seems to be a persistent problem with capitalization.
  2. It is simple for a computer to automatically do something to help prevent this.

There seem to be two camps to those who believe that the computer should act:

  • The computer should actively change the post.
    • The concern about corner cases can really only effect this position as everything else either prompts the user or takes no action.
    • As there are only a trivial number of new users who ask, "Why has my opening <greeting> been removed" in meta, I would suppose that the number of users who complain, "Why has my incorrect capitalization been removed?" would be similarly small, if not lesser.

  • The computer should alert the submitter that an error has been made. (To me, this is now the most convincing argument)
    • Presumably, this would only effect posts of users who are of certain level of reputation.
    • This could simply be added to the existing filters which test for post quality.
    • Corner cases become functionally irrelevant as the user has the ability to override the changes.

There are others, however, who believe that the computer should take no action.

  • It may not pass cost-benefit analysis (I always have to put that in for feature requests as it is always my first objection, even to my own requests)
  • As a corollary to the first point, the number of unambiguous points is particularly small. (This is a very convincing point)
  • This does not significantly impact readability or comprehensibility
    • I answer:
      • SE sites ARE NOT ABOUT READABILITY. They are about quality. And, as I see it, quality is job one. The purpose of SE is that people should be able to find good questions matched with good answers.
      • Grammar is a UI. Bad grammar is a bad UE.
      • If there is a way to make a significant number of future answers better, it is something worth considering.
  • This poses an additional threshold for new users.
    • I answer:
      • This poses less of a barrier than, "Format your question correctly" — if it is automatic, then it poses no real problem in a vast majority of situations. If it is part of the quality screening, then a simple "Normally, <thing> is capitalized <way>" would suffice.
      • If someone is new enough to programming that that person does not know that jQuery is not JQUERY or Jquery, then that user really needs to be corrected (in as gentile a manner as possible), just like people need to know that it is C-sharp.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .