Markup Languages are a wide subject covering SGML (the grandfather of them all)
thru HTML to XML and its many variants. Markup is an absolute neccessity in
modern programming without which much of todays products would not be possible.
An example
that springs to mind is the use of SOAP or REST in webservices. Without the XML
contract in SOAP or the Response XML in REST neither of these would exist. The
importance of markup cannot be overestimated and although simple to implement
the basic rules 99% of the time are ignored by small and large companies alike.
The major culprit is XML, many programmers are of the opinion that XML
translates into "Anything goes", nothing could be farther from the truth. There
is a significant chance of abuse of XML both in use and implementation. A
perfect example would be the use of un-escaped characters completely missed by
many programmers until the system breaks instead of a little forethought and the
use of CDATA tags.
Html obviously being a markup language is similarly abused, because the
interpreters are loosely based many programmers let bad habits creep in. This is
obvious as one only needs to run the html of virtually any page through an html
checker and results ensue. Some things are unavoidable such as discontinuation
of support of tags in browsers but others are just downright laziness. Sooner or
later the bad habits and errors that creep into HTML will raise their heads and
result in unpredictable consequences. The stricter format and error trapping
followed by Visual Studio is considered to be an advantage including the more
correct restrictions placed on markup by XHTML.