Why use Markdown?May 15, 2017
Markdown has changed how I go about writing. I write everything I can in Markdown, notes, documents, blog posts.
What is it?
Markdown is a type of markup language (programmers, the best at naming things). This basically means it allows me to type plain text, add a little syntax, and turn it into something that looks much nicer. For example:
# Big Header Text that is **bolded** or *italicized* with some code `int i = 0;` thrown into the mix.
will look like this
Text that is bolded or italicized with some code
int i = 0;thrown into the mix.
This means you don’t need to use LibreOffice or Microsoft Word to make a nice looking document.
Basic Markdown lets you:
- Make list
- And sub-lists
- And sub-sub-lists
- And sub-lists
- Make headers
- Links to websites and images
- Create tables
Not to mention you can embed normal HTML in Markdown files for anything more complicated (though that doesn’t normally crop up). In addition, because Markdown is so simple it can be easily converted to other file formats, like PDFs.
How to use it?
- To make a Markdown file, all you have the do is save a plain text file with the
.markdownextension. Super simple.
- Add some some extra syntax (using characters like *, #, `, <) to make the regular text look nicer.
- Use a Markdown viewer to display the text as the formated version. There are standalone viewers such as Dillinger or Haroopad that focus on a great Markdown experience, or use a text editor like Atom or Visual Studio Code which are lightweight multi-language code editors.
What’s the use case?
You’ll most often see Markdown used for
README files on GitHub. That’s because it’s really easy to use Markdown files in version control, after all, it’s just text. And because most text editors and IDEs support Markdown, as a programmer I don’t need to install any additional software to write with it.
That’s not the only use though. I’ve already claimed it has changes my writing habits. So how do I use it? Well for one, this page here was initially written in Markdown. This site is built with Jekyll, which means all the pages are turned from Markdown into HTML. This allows me to focus on the words I’m writing, and not have to worry about a missing bracket somewhere or be forced to use a clunky GUI.
I also write all my notes in Markdown. Both for school and personal use. This is because it’s very fast to write Markdown. Want to make a header? Just type a # or two. No need to stop typing, highlight the words, and drag my mouse to the bold button. I just type. That’s very important when you have a professor with a fast mouth, or just want to add a quick item to a todo list.
So there are two different types of competitors to Markdown. Other markup languages, such as HTML or Latex, and rich text editors such as Microsoft Word or LibreOffice Writer.
Other markup languages tend to have more specific uses cases. For example Latex makes nicely formated math, and HTML is used on every webpage. The downside with them however, is that they are much slower and painful to write in (trust me, I tried switching to making math notes in Latex and only lasted a few days). They also aren’t as easy to read as Markdown (
<p>Not at <strong>all</strong></p>).
Rich text editors on the other hand are designed to be used by any layman. They have nice GUIs that can provide a ton of advanced features. However, because they have more going on under the hood than you know, if something goes awry, you may have no idea why. I personally seem to always have battles with Word when it comes to formating outlines. In addition, you typically need a specific program to create and edit rich text files (which also take up more storage). Though more people probably have Word installed on their computer then a Markdown viewer.
- Simple syntax
- Easy to learn
- Fast to type
- It’s just text
- Can be edited from any text editor
- Small file size
- Very popular
- Lots of uses
- Need a Markdown Viewer to view the nicer format
- So it’s hard to share Markdown files directly with others
- Tables are a pain to create
- Limited features when compared to other options
- There are different Markdown standards based off the original
- Additional syntax adds additional features
- Additional syntax means different standards don’t fully work together
Markdown fit’s very nicely in my workflow. I use the same application as I write my code. I don’t have to fight it to make it look nice. All I need to do is focus on the task at hand and type. As a consequence, I’ve fallen in love with it, and have tried to find even more uses for it. I highly recommend it to anyone who dislikes distractions while writing and wants a more pleasant typing experience.
Till next time,
- Matthew Booe