One common way to divide the different types of English grammars available is to label them descriptive or prescriptive, though a grammar may contain elements of both.
The principles around which they are written are very different; a prescriptive grammar is one that lays down the rules for English language usage, while a descriptive grammar synthesises rules for English usage from the language that people actually use. A prescriptive grammarian believes that certain forms used are correct and that others, even though they may be used by native speakers, are incorrect. Many prescriptivists feel that modern linguistics, which tends to place emphasis on actual rather than perceived language usage, is responsible for a decline in the standard of language.
Descriptivists look at the way people speak and then try to create rules that account for the language usage, accepting alternative forms that are used regionally and also being open to forms used in speech that traditional grammars would describe as errors.
As with so much in English, both sides have a lot to offer. Pure prescriptivist grammar will lead to artificial claims that are hard to maintain in light of the facts. While prescriptivists would prefer the use of the past subjunctive after if (If I were you, etc), it is very difficult to claim that everyone who uses was is wrong, especially as they are the majority in spoken language. Google puts past subjunctive just over 10% ahead, though it is recording written text only. While there are still traditionalist grammarians claiming that they are right and half the population is wrong, most have modified their approach and talk of this form as preferable, or describe it as formal register, and ESL examination boards no longer test it, bit accept both.
There are also zealous descriptivists, who instead of genuinely describing English language usage, feel they should give it a hand to change and develop, by encouraging the demise of forms they see as old-fashioned. Those who fall into this trap, such as recommending avoiding whom, or claiming it is no longer relevant are themselves simply neo-prescriptivists, though favouring development and change rather than conservativism.
A descriptive grammar looks at the way a language is actually used by its speakers and then attempts to analyse it and formulate rules about the structure. Descriptive grammar does not deal with what is good or bad language use; forms and structures that might not be used by speakers of Standard English would be regarded as valid and included. It is a grammar based on the way a language actually is and not how some think it should be.
A prescriptive grammar lays out rules about the structure of a language. Unlike a descriptive grammar it deals with what the grammarian believes to be right and wrong, good or bad language use; not following the rules will generate incorrect language. Both types of grammar have their supporters and their detractors, which in all probability suggests that both have their strengths and weaknesses.