Using github pages seems pretty smooth. Every blogpost is just a file in a github repo. I think I will like this. First thing I did to be able to make creating new blogpost a smooth experience was to create an emacs function that creates blogpost files automatically:

(defun jakob/string-to-filename (string)
  "docstring"
  (replace-regexp-in-string "[^a-zA-z-]" "" (replace-regexp-in-string " " "-" (downcase string))))

(defun create-blog-file (header categories)
  "Create a new blog file that can be used in github pages"
  (interactive "sHeader:
sCategories: ")
  (let ((dateToday (format-time-string "%Y-%m-%d"))
        (fullDateToday (format-time-string "%Y-%m-%d %H:%M:%S %z")))
    (find-file
     (concat
      (projectile-project-root) "_posts/"  dateToday "-" (jakob/string-to-filename header) ".markdown"))
    (insert "---
layout: post
title: \"" header "\"
date:   " fullDateToday "
categories: " categories "
---
")))

Your welcome!