Markdown: el format de text lleuger

Markdown és un llenguatge de marques lleuger dissenyat perquè el text pla sigui alhora fàcil d'escriure i fàcil de convertir a HTML i altres formats. A diferència de l'HTML, Markdown es llegeix còmodament en format brut — sense renderitzar — perquè els seus símbols de format imitessin la convenció tipogràfica informal que la gent ja usava en correus electrònics i fòrums.

La sintaxi bàsica inclou: 

  • # Títol per a capçaleres (fins a 6 nivells)
  • **negreta** i *cursiva*
  • - element per a llistes no ordenades
  • [text](url) per a enllaços
  • ```codi``` per a blocs de codi

El resultat és un document llegible en text pla i alhora fàcilment renderitzable a HTML net.

Història i evolució

Markdown va ser creat el 2004 per John Gruber (del blog Daring Fireball) amb la col·laboració de l'activista Aaron Swartz. L'objectiu era crear un format de text pla que pogués convertir-se a HTML vàlid sense la complexitat ni la verbositat del marcatge manual.

L'adopció inicial va ser lenta, limitada principalment al món dels blocs tècnics. El punt d'inflexió va arribar quan GitHub va adoptar Markdown per als fitxers README el 2008, convertint-lo en l'estàndard de per defecte de la documentació de projectes de programari. Poc després, Stack Overflow, Reddit i desenes d'altres plataformes el van integrar als seus editors.

La manca d'una especificació formal va generar una proliferació de dialectes incompatibles (GitHub Flavored Markdown, MultiMarkdown, kramdown...). Intents d'estandardització com CommonMark (2014) han aconseguit certa harmonització, però la fragmentació persisteix. Avui, Markdown és el format d'escriptura per defecte en plataformes com GitHub, GitLab, Notion, Obsidian, Jupyter Notebooks i milers d'eines de documentació.

Bones pràctiques

Markdown és simple, però té matisos importants per usar-lo eficaçment:

Conèixer les variants del dialecte que s'usa. GitHub Flavored Markdown suporta taules, llistes de tasques i ressaltat de sintaxi en blocs de codi; el Markdown original no. Revisar la documentació específica de la plataforma on es publica el document evita sorpreses de renderitzat.

Estructura jeràrquica consistent. Usar un sol H1 per document, jerarquitzar correctament els nivells de capçalera (H1 → H2 → H3) i no saltar nivells millora l'accessibilitat i l'estructura semàntica del document resultant.

Espais en blanc significatius. Markdown és sensible als salts de línia: un salt simple sol no crear un paràgraf nou. Separar paràgrafs amb una línia en blanc i, si cal, usar dos espais al final d'una línia per forçar un salt de línia suau ( ) evita errors de renderitzat inesperats.

Evitar HTML inline sempre que sigui possible. Markdown permet barrejar HTML, però abusar-ne elimina el principal avantatge del format: la llegibilitat en text pla. Reservar HTML per a casos on Markdown realment no ofereix una alternativa nativa.

Casos d'ús

Markdown és el format de referència per a la documentació tècnica: fitxers README, wikis de projectes, guies d'instal·lació i API references es reduïen en Markdown perquè permet un control de versions eficient amb Git i una visualització neta als navegadors. Als blocs i plataformes de contingut (Ghost, Jekyll, Hugo, Gatsby), Markdown permet als redactors escriure sense dependre d'editors WYSIWYG complexos. En entorns de ciència de dades, els Jupyter Notebooks combinen cel·les de codi Python amb cel·les de text en Markdown per crear documents analítics reproduïbles i fàcilment compartibles.

Curiositats

  • Aaron Swartz, coautor de Markdown, va ser també el cofundador de Reddit (que el va adoptar ben aviat), creador del format de sindicació RSS i defensor dels drets digitals. Va morir el 2013 als 26 anys.
  • El nom "Markdown" és un joc de paraules: en tipografia, "markup" (marcatge) afegeix informació al text. Markdown és l'oposat: text pla que es "markeja cap avall" (markdown) per simplificar.
  • Obsidian, una de les apps de notes més populars entre professionals del coneixement, usa fitxers Markdown purs. Les notes segueixen sent text pla llegible sense cap programa especial.
  • L'especificació CommonMark de Markdown té més de 600 exemples de casos límit documentats. Malgrat la seva aparent simplicitat, la definició formal precisa del format és sorprenentment complexa.