BOTTOM LINE: A smart sci-fi thriller with a lot of heart.
I was fortunate enough to see Source Code at an advance screening a couple weeks ago. I’ll admit, my initial reaction was to trash it. I didn’t like it at all. Now that I’ve had some time to think about it, I’d like to revise that opinion: while I still don’t love it, I don’t hate it, either.
I first discovered a Ben Ripley draft of Source Code floating around the Internet a year or two back. I devoured it. To this day, it’s still probably the most entertaining, compelling script I’ve ever read. Fast-paced and well-written, it drew me into the world and took me on an absorbing journey with Captain Colter Stevens without any superfluous nonsense.
Sci-fi guru Duncan Jones’ film adaptation, unfortunately, is not as disciplined as the script. It suffers from a weak middle and a thin premise. What was so fresh and exciting about the script was lost in the film. As a reader first and filmgoer second, it was initially hard for me to let go of this loss. However, I now realise it was for the good of the uninitiated audience, and I humbly take back my low first opinion.
The story begins when Captain Colter Stevens (Jake Gyllenhaal) wakes up on a commuter train headed to Chicago with no recollection of how he ended up there. He realises he’s in the body of a stranger when fellow passenger Christina (Michelle Monaghan) begins talking to him like they’re longtime friends. As he tries to figure out what’s happened to him, the train suddenly explodes, killing everyone on board. Colter wakes up in a strange capsule filled with broken wires and leaking gadgets. He’s informed by an unfamiliar soldier, Goodwin (Vera Farmiga), through a computer screen that his mission is to identify the bomber before he can carry out his threat to bomb the rest of the city of Chicago. As always, she tells him, he will have eight minutes to carry out this task. Without providing any further instruction, Goodwin’s assistant punches a button, sending Colter back to the same moment on the train he first woke up to.
As the story progresses, Colter starts demanding information about his condition (the last thing he remembers is being in the middle of an air mission) in exchange for clues to the bomber’s identity. He discovers that the explosion happened in real time several hours ago, and everyone on board died. This doesn’t sit too well with Colter, who has begun to fall more in love with Christina with each doomed eight-minute visit to the train. Eventually, Colter unearths the truth: he is part of an experimental government program called Source Code that allows him to enter the last eight minutes of a person’s life — reconstructed using traces of memories the brain formed just before death — to find out what really happened. Dr. Rutledge (Jeffrey Wright), the manipulative head scientist, is intent on proving his program’s worth to the government, and Colter is a helpless pawn in his pursuit of power.
The film’s main fault is that it requires viewers to suspend a great deal of belief — perhaps too much — after the poor, two-minute scientific explanation Rutledge offers fails to provide an adequate reason as to why we should just accept that a guy can live inside a program, inhabit a dead man’s body, and visit places and hold conversations inside a memory reconstruction that the memory holder surely never experienced. In the script, Ripley set aside time to explain the existence of an alternate universe, one that can adjust to account for Colter’s actions without having a retrospective effect on the real world. Although that wasn’t any more realistic than the film’s explanation, it at least made some kind of sense.
Nevertheless, the story told here is a powerful one, particularly once the realisation that Colter will never be with Christina (for multiple reasons) hits home. Gyllenhaal is excellent as Colter, giving a performance full of determination, courage, and vulnerability that will crush hearts. Farmiga was an excellent choice for Goodwin. She made the character human, more than just a supporting character meant to fill one particular role, which is more than I can say for the character in the script (who was actually male). Monaghan as Christina is naturally likable, and we believe that Colter would fall in love in with her so quickly, while Wright pulls off the twitchy, heartless Rutledge.
So what was it that I recently changed my mind on? The flow of the film. When I first saw it, I was disappointed with most of the second act. It slowed down the brisk pace of the story, lingering too long on Colter’s tantrums in the capsule and Goodwin’s moral struggles. One particularly long scene, in which the program unexpectedly shuts down and Colter frantically runs around trying to turn the heat back up before he freezes to death, was so unnecessary that it took me out of the film completely for several minutes. The story seemed to take giant leaps forward, skipping some of the most interesting discoveries Colter made on the train in favour of multiple close-ups of Gyllenhaal’s face.
However, now that I’ve had some time to take a step back, I realise my mistake in wanting this particular aspect of the film to mirror the script. Every detail shrinks when it’s translated from writing to the big screen. People don’t want — or, at the very least, don’t NEED — to see every step that leads to Colter’s big discovery about his current state. They just need to be fed that juicy bit of information, and everything before it will be forgotten. In retrospect, it was smart of the filmmakers to dial back on the mystery and focus more on character.
In the end, regardless of whether the script was superior, Source Code is a smart sci-fi thriller with a great deal of heart. The idea isn’t exactly novel (Groundhog Day and Deja Vu have already been there, done that), but the relatable cast makes it worth watching. Some people will be upset by the ending, but I enjoyed it on a guilty pleasure level. It may seem like a cop-out, but it’s emotionally satisfying, just like the rest of the film.