Often it is easy to ignore the underlying words for acronyms that are used technical applications because often they are pretty boring. Knowing what blob
, HTML
, JSON
, GUID/UUID
are used for and what you can do with them tends to be the more important thing than learning what they stand for when starting software development due to the shear breadth of scope in software development.
Several years ago learning XHR
was one of these acrynoms that didn't initially need to learn, but just needed to know to click on XHR
to filter down the requests in the network panel of Chrome Dev Tools for an Angular project I was working on. Curiosity eventually got the better of me to learn what XHR
actually stood for.
In the XHR
the first two letters are actually acronyms themselves standing for XML
and HTTP
, respectively. The final letter is luckily just simple stands for "Request
". So the first layer widens out to "XMLHttpRequest
". XML
then stands for "eXtensible Markup Language
" which is a bit irregular in that it doesn't use the first letters like proper initialism might. HTTP
stands for "Hyper Text Transfer Protocol
" which brings our short little three letter acrynom of XHR
to a grand total of "Extensible Markup Language Hyper Text Transfer Protocol Request
" or 63 characters. That's some pretty good compression.
The other great thing about XHR
is that despite the name explicitly mentioning XML
and HTTP
it doens't have to only be XML
as JSON
is also commonly sent as XHR
and the request doesn't techinically need to be HTTP
and could be done on other protocols. Atleast the R
is straightforward.
When writing this article I felt remiss to not mention another great tech acronym of GNU
which is recursive in that it stands for "GNU's Not Unix!
".
Overall this article is far too much writing for just a three letter acryonym but thanks for reading.