Markdown is a lightweight markup language designed to make writing structured documents easier and more readable for people.
Markdown uses a syntax based on special characters that are intuitive and easy to remember. This makes it very easy to read, it’s almost like reading plain text. This is the main advantage over other formats like HTML or XML.
Moreover, being so simple, it also has the advantage that to edit a Markdown document we can use a simple text editor. There’s no need for a complex IDE or additional tools.
Finally, it is very straightforward for a program to convert Markdown to HTML. This makes it an alternative for writing web pages easily, and then a tool can convert it simply.
Origin and History of Markdown
Markdown was created by John Gruber in 2004 with the aim of providing a way to write plain text documents that could be easily converted to HTML (Hypertext Markup Language), but without having to deal with the complexities of HTML code.
Since its creation, Markdown has evolved and adapted to new needs and contexts. In 2006, a more formal specification called “Markdown Extra” was introduced, which added additional features like tables and term definitions.
Subsequently, other variants and extensions of Markdown appeared, such as GitHub Flavored Markdown (GFM) and CommonMark. These variants aimed to standardize and expand the capabilities of the language.
This evolution of Markdown was an advantage because it allowed for the introduction of new functionalities. But, on the other hand, it is also a headache that we will have to get used to, as some functionalities are not fully standardized.
However, it has progressively become a very popular language for technical writing. It is especially important in the fields of programming and web development (although, of course, it is not limited to these, and we can use it in any other).
Example of Basic Syntax
Let’s look at a short example of text in Markdown format,
# Main Title
Text in **bold** with more text here.
- Unordered list
- Another item
1. Ordered list
2. Second item
[Link to LuisLlamas.es](https://www.luisllamas.es)
This code will be converted into the following HTML format:
<h1>Main Title</h1>
<p>Text in <strong>bold</strong> with more text here.</p>
<ul>
<li>Unordered list</li>
<li>Another item</li>
</ul>
<ol>
<li>Ordered list</li>
<li>Second item</li>
</ol>
<a href="https://www.luisllamas.es">Link to LuisLlamas.es</a>
As we see, text in Markdown format is very comfortable to read. The elements and symbols that provide formatting (like using -
for a list) are minimal, unobtrusive, and very natural.
Main Uses of Markdown
Today, Markdown is widely popular due to its simplicity and flexibility. It is used in a wide variety of contexts.
For example, Markdown is widely used to write technical documentation. Many software projects and open-source libraries use Markdown for their README.md
files in GitHub repositories.
On the other hand, there are numerous blogging or website creation platforms like Jekyll, Hugo, or Astro, which allow us to write web pages using Markdown. Here, the ease of formatting text and adding elements like images and links makes Markdown ideal.
It is also a popular format for personal note-taking due to its simplicity and ability to keep the text plain. Applications like Obsidian and Notion allow us to write notes in Markdown and then organize them as we wish.
Finally, Markdown is used to write articles, documents, and presentations, especially in combination with reference management systems like Pandoc. Its ability to generate documents in PDF and HTML format is particularly useful, for example, for academic publishing.
These are just a few examples, but there are surely many more. Basically, you can use Markdown wherever you want. And if you get used to it, you will probably end up using it for many more things.