diff --git a/articles/generate_listing.sh b/articles/generate_listing.sh
index b0be479..cf62c2d 100755
--- a/articles/generate_listing.sh
+++ b/articles/generate_listing.sh
@@ -7,9 +7,9 @@ cat << EOF
 title: Articles
 ---
 
-
 EOF
 
+listing=""
 for file in *.md; do
     if [ $file = "index.md" ]; then
         continue
@@ -18,10 +18,6 @@ for file in *.md; do
     link=$(basename $file .md).html
     date=$(sed -n 's/date: \(.*\)/\1/p' $file)
     title=$(sed -n 's/title: \(.*\)/\1/p' $file)
-    echo "- $date: $title"
-
+    listing="$listing- $date: [$title]($link)\n"
 done
-
-cat << EOF
-
-EOF
+echo -e $listing | sort --reverse