To watch David Gordon Green's adaptation of Larry Brown's novel about the friendship between Joe, a middle-aged ex-con, and Gary, a 15-year-old boy with an abusive father, is to experience a bit of a culture shock.
Not just because it is Nicolas Cage's first serious work in about a decade, but because it takes us to some impoverished, booze-wreaked bit of the American rural South where, if the film hadn't been made with such eloquence and care, you just wouldn't believe life could be so tough.
Much of the supporting cast were non-professional actors. And although, in a different kind of movie – The Texas Chainsaw Massacre, say – they might have looked and sounded like they were supplied by Central Casting, here they are vivid and authentic.
None more so than Gary Poulter, who plays the abusive father Wade: a pitiless alcoholic deadbeat with a shock of white hair and a thousand-yard stare, prone to sudden violence and occasional breakdancing. (Mr Poulter sadly died in February last year. The coroner's report said "accidental drowning with acute ethanol intoxication".)
You can't take your eyes off him when he's onscreen. Moreover he makes Cage, a similarly intense and unpredictable screen presence, look more normal. And he makes Joe, who daily battles to restrain the same demons that Wade gave up fighting long ago, seem all the more heroic.
Joe is a gripping drama with a powerful moral core, that has sympathy for those trying to make their way alone through the world, but doesn't give them much of a chance. Friendship and hard work are its characters' only paths to redemption.