jcooper's blog