https://www.ascilite.org/conferences/sydney13/program/papers/Faridhan.pdf