doing: http://c.learncodethehardway.org/book/ex18.html and learning from it. strange order is ... strange