Gyllenhaal takes a gripping ride: ‘Source Code’ a confusing but satisfying actioner
The title of “Source Code’’ would lead you to believe you are in for another one of those breathless, inane computer thrillers — something with Sandra Bullock clackety-clacking on the keyboard in a race to save the free world. Sorry, not even close; this one’s about Jake Gyllenhaal being forced to go back in time over and over again in an effort to catch a mad bomber. Sort of like “Groundhog Day’’ meets the old French brain-buster “La Jetée’’ (or its big-studio remake, “12 Monkeys’’). I’m still not sure what “source code’’ means here. I suspect the actors, the director, and the screenwriter haven’t a clue either. But the thing keeps you watching.
The movie opens, disorientingly, with Gyllenhaal’s character, Air Force Captain Colter Stevens, waking up in a commuter train across from a woman who insists on calling him George. When he looks in the restroom mirror, he sees another man’s face. Then the train blows up.
The last Stevens knew, he was in the middle of a battle in Afghanistan. Now he is trussed up in a tiny metal capsule talking by means of closed-circuit TV to a Defense Department wonk named Colleen (Vera Farmiga). She informs the hero that he will keep going back to that train until he finds the terrorist who planted the explosive device and who has subsequently aimed a dirty bomb at the greater Chicago area. Stevens has eight minutes each trip, just enough time to realize how little time he has.
It’s as if he (and we) were stuck on a level of a video game, attempting different strategies, dying, and starting again from square one. After a while, all he wants to do is save the woman on the train, whose name is Christina (Michelle Monaghan) and who had been hoping the co-worker whose body Stevens is renting would try something one of these days.
Written by Ben Ripley, “Source Code’’ is ingeniously structured as a mystery inside a mystery. Which one of the passengers is the bomber — watch that racial profiling, now — and how did the hero even come to be a guinea pig in this twisted science experiment? Gyllenhaal has to solve the first by dashing about like a madman and the second by staying put, and he brings enough emotional urgency, even mournfulness, to give the movie an unexpected gravitas.
Director Duncan Jones — shh, he’s David Bowie’s son but, more to the point, he directed 2009’s fine little existential sci-fi drama “Moon’’ — merely has to juggle two complicated plot lines and bring them together at just the right time. I’d say he has the tougher job, and he pulls it off well enough for us to seriously look forward to whatever Jones does next. (It won’t be his future-noir dream project, “Mute,’’ which keeps getting delayed.)
At the same time, “Source Code’’ can’t help but come down with the conceptual sillies from time to time. The situation is so preposterous and the characters’ attempts to explain it make for such bogus high-tech gobbledygook — Jeffrey Wright does what he can with the stock role of the crippled Dr. Strangelove behind the experiment — that you need a weed whacker just to keep sight of the plot. The movie plays with the metaphysics of time and causality, and it gives Gyllenhaal a big Sisyphean rock to push uphill over and over, but in no way does it enter the cosmically profound through the back door the way “Groundhog Day’’ did.
It does keep you guessing, though, and the mystery of the bomber pays off nicely before the truth of the hero’s situation is revealed (no, he’s not dead). Unfortunately, the more you think about the movie, the less sense it makes, even by the terms of its own internal logic. (For one thing, how did they get the hero into the mind of a bystander who has already been blown to smithereens?) That goes double for the ending, or maybe I should say quadruple. There are so many loose plot-strands left lying around, it would be easy to turn one into a sequel.
I can’t say I’d mind. It may be the only way to find out what the hell “source code’’ means.
Ty Burr can be reached at tburr@ globe.com.