Ruby Sparks may be the latest film from Jonathan Dayton and Valerie Faris, the minds behind 2005’s Little Miss Sunshine, but it’s entirely possible that primary authorship of the picture belongs entirely to one Zoe Kazan. Kazan not only plays the red-headed manic pixie dream girl of the title, she wrote the screenplay, too, and as light and frothy as this story feels, it also has a surprisingly sharp set of teeth, which Sunshine—for all of its infectious outrageousness—lacks. Oh, Dayton and Faris serve, there’s no doubt about that; but while they’re located in the directors’ seats, there’s a sense that they’re just instruments for realizing Kazan’s sweet, hilarious, and at times shockingly dark confrontation of both the manic pixie dream girl figure and the male gaze.
It’s interesting that Kazan’s real-life boyfriend, the great Paul Dano, joins her in this particular endeavor; he’s playing an uncomfortable and deeply grey role alongside Kazan in their first on-screen pairing together. Not that Dano’s literary has-been, Calvin, is a bad guy. Attaining a huge and sudden level of success at 19, Calvin’s just wading through life trying to mine his next novel from whatever experiences he can while patching the wounds of a failed relationship. Uninspired by life, he suddenly starts dreaming about a lovely, spirited girl named Ruby, and overnight she becomes his phantom muse. Until, of course, she transitions from being a figment of his imagination to being a living, breathing, vivacious human being wandering around in his house.
A gauche viewer might smugly observe Ruby Sparks as a modern take on Pygmalion, and they’d be right, but the emphasis should be on “modern”, even if Calvin himself is hopelessly stuck in the past. (He uses a typewriter and does not own a computer. Take that smartly deployed bit of symbolism as you will.) Ruby speaks, dresses, and acts like a member of today’s hipster culture, but she possesses the sharp mind bequeathed to her by her unwitting creator, though she’s not aware of this dichotomy whatsoever. In other words, Ruby’s substantive rather than vacuous. That doesn’t veer her off the manic pixie dream girl path, but, cleverly, Ruby Sparks gets away with the trope thanks to its basic conceit. Of course that’s who Ruby is; she was written by a man who patently doesn’t know or understand women whatsoever, and who exists in a lonely, isolated place. Ruby is everything Calvin wants her to be, and what he wants her to be is the embodiment of that character archetype. She’s his very literal dream girl come to life.
That leads our hero to confront a daunting, sobering reality: once he has Ruby in his life, he doesn’t really know what to do with her. And as much as he is, for all intents and purposes and as far as it concerns Ruby’s existence, God, he’s also still a self-absorbed young man trying to figure himself out. Normally, Ruby would be the one to help him with that, and yet Ruby Sparks doesn’t end up being a film about how the love of the right woman can totally turn a man’s life around. It flirts with that idea, but takes us to a more nihilistic place by focusing on dominance tropes; there’s a higher emphasis placed upon the inequitable power relationship between Calvin and Ruby than on quirky, airy, and predictable melodrama.
None of this is to say that Ruby Sparks does not invest any time in being the feel-good picture marketing dresses it as. At times, it soars on the strength of Kazan and Dano’s chemistry with one another, though that may not be saying much in the long run given their real-life status as an item. However you’d like to characterize their on-screen pairing, it works; they’re lovely together in their better moments. Much of their energy derives from the seemingly bottomless reserves of moxy Kazan has stored in her soul, but it’s Dano who tempers the unbridled joy of her spirit with his awestruck stare. Even when he proves to himself that Ruby is flesh and blood, he’s still in utter disbelief that she’s real, and that she really loves him.
Their differing, yet complimentary, personalities lend a firm hand of honesty to the film. Opposites really do attract. At the same time, that division ends up creating a gap between them, and when it does Ruby Sparks‘ tone takes a downward spiral into some truly unsettling stuff. Nothing violent, mind (though one could argue that the wholesale enslavement of a human being is itself an act of violence), but deeply psychological– which is discomfiting in its own way. Ruby Sparks never forgets that it’s a romantic comedy, but it intentionally veers sharply away from that milieu in the final half hour to personify its overarching metaphor about male dominion. Considering the film’s pedigree, its climax may come of as somewhat shocking, and it’s clearly meant to be.
And that’s a good thing. Ruby Sparks‘ most resonating material is found in the degradation of its central relationship, an unexpected surprise given the outward appearance the film projects. This is a movie that’s sunny on the outside, grim on the inside, and rife with compelling insights and ideas for us to mull over; the buoyancy of its initial humor and spirit almost feels like a cover for the more serious, dramatic flourishes of the third act. Which characteristic is more likely to impress itself on viewers is variable, but Ruby Sparks‘ two separate halves connect to create a satisfying, mostly well-focused whole. (There’s a question as to whether a tangent involving Annette Bening and Antonio Banderas as Calvin’s mom and her new husband is totally necessary.) Ultimately, the film is as substantive as it is frivolous, sweet as it is bitter, and a love story that feels appropriately contemporary in the age of E-Harmony.
Thanks Alley. Definitely go see it if you get the chance. I like but do not love Little Miss Sunshine, but this is really quite special and very much deserves to be seen.
Great review of a teasing film. I’ve been thinking about the Bening-Banderas tangent and wonder whether it somehow underscores or unsettles the reality-fantasy thing. They are clearly real – and in a sense their meeting Ruby makes her more “real” – but on the other hand there’s a lot of fantasy to their life. It serves I think to both suggest different relationships and to unsettle the viewer just a little bit more.
I thought about that too, but I think the film would have been better served by actually exploring that facet of the relationship. If this actually matters as far as it concerns Ruby and Calvin, it really should have been addressed directly, I think.
And yeah, I did notice the laptop switch. Nice little sign that Calvin’s starting to acclimate himself to modern life.
Yes, I think the mother-boyfriend story wasn’t really explored well enough to make the point it might have been intending … but it’s interesting to talk about what that point might have been!
Upon further examination of the Bening-Banderas tangent (I bothered me, so I delved deeper)! It was a pure nugget of information overshadowed by its over the top stereotype environment! Benings character was never allowed to be her authentic self in her first marriage! The photo says it all! Short hair and Polo top-clearly an extension of her husband holding onto the trophy-THROPHY WIFE! An equal in a man’s world, and not a female with separate but different gifts to bring to the relationship!
{"id":"2","mode":"form","open_style":"in_place","currency_code":"USD","currency_symbol":"$","currency_type":"decimal","blank_flag_url":"https:\/\/agcrump.work\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/blank.gif","flag_sprite_url":"https:\/\/agcrump.work\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/flags.png","default_amount":500,"top_media_type":"featured_image","featured_image_url":"https:\/\/agcrump.work\/wp-content\/uploads\/2025\/10\/image-asset-179x200.webp","featured_embed":"","header_media":null,"file_download_attachment_data":null,"recurring_options_enabled":false,"recurring_options":{"never":{"selected":true,"after_output":"One time only"},"weekly":{"selected":false,"after_output":"Every week"},"monthly":{"selected":false,"after_output":"Every month"},"yearly":{"selected":false,"after_output":"Every year"}},"strings":{"current_user_email":"","current_user_name":"","link_text":"Leave a tip","complete_payment_button_error_text":"Check info and try again","payment_verb":"Pay","payment_request_label":"A Constant Visual Feast","form_has_an_error":"Please check and fix the errors above","general_server_error":"Something isn't working right at the moment. Please try again.","form_title":"Support My Work:","form_subtitle":"","currency_search_text":"Country or Currency here","other_payment_option":"Other payment option","manage_payments_button_text":"Manage your payments","thank_you_message":"Thanks for supporting my work!","payment_confirmation_title":"A Constant Visual Feast","receipt_title":"Your Receipt","print_receipt":"Print Receipt","email_receipt":"Email Receipt","email_receipt_sending":"Sending receipt...","email_receipt_success":"Email receipt successfully sent","email_receipt_failed":"Email receipt failed to send. Please try again.","receipt_payee":"Paid to","receipt_statement_descriptor":"This will show up on your statement as","receipt_date":"Date","receipt_transaction_id":"Transaction ID","receipt_transaction_amount":"Amount","refund_payer":"Refund from","login":"Log in to manage your payments","manage_payments":"Manage Payments","transactions_title":"Your Transactions","transaction_title":"Transaction Receipt","transaction_period":"Plan Period","arrangements_title":"Your Plans","arrangement_title":"Manage Plan","arrangement_details":"Plan Details","arrangement_id_title":"Plan ID","arrangement_payment_method_title":"Payment Method","arrangement_amount_title":"Plan Amount","arrangement_renewal_title":"Next renewal date","arrangement_action_cancel":"Cancel Plan","arrangement_action_cant_cancel":"Cancelling is currently not available.","arrangement_action_cancel_double":"Are you sure you'd like to cancel?","arrangement_cancelling":"Cancelling Plan...","arrangement_cancelled":"Plan Cancelled","arrangement_failed_to_cancel":"Failed to cancel plan","back_to_plans":"\u2190 Back to Plans","update_payment_method_verb":"Update","sca_auth_description":"Your have a pending renewal payment which requires authorization.","sca_auth_verb":"Authorize renewal payment","sca_authing_verb":"Authorizing payment","sca_authed_verb":"Payment successfully authorized!","sca_auth_failed":"Unable to authorize! Please try again.","login_button_text":"Log in","login_form_has_an_error":"Please check and fix the errors above","uppercase_search":"Search","lowercase_search":"search","uppercase_page":"Page","lowercase_page":"page","uppercase_items":"Items","lowercase_items":"items","uppercase_per":"Per","lowercase_per":"per","uppercase_of":"Of","lowercase_of":"of","back":"Back to plans","zip_code_placeholder":"Zip\/Postal Code","download_file_button_text":"Download File","input_field_instructions":{"tip_amount":{"placeholder_text":"How much do you want to tip?","initial":{"instruction_type":"normal","instruction_message":"How much do you want to tip?"},"empty":{"instruction_type":"error","instruction_message":"How much do you want to tip?"},"invalid_curency":{"instruction_type":"error","instruction_message":"How much do you want to tip?"}},"recurring":{"placeholder_text":"Recurring","initial":{"instruction_type":"normal","instruction_message":"Want to make a recurring tip?"},"success":{"instruction_type":"success","instruction_message":"Want to make a recurring tip?"},"empty":{"instruction_type":"error","instruction_message":"Want to make a recurring tip?"}},"name":{"placeholder_text":"Name on Credit Card","initial":{"instruction_type":"normal","instruction_message":"Enter the name on your card."},"success":{"instruction_type":"success","instruction_message":"Enter the name on your card."},"empty":{"instruction_type":"error","instruction_message":"Please enter the name on your card."}},"privacy_policy":{"terms_title":"Terms and conditions","terms_body":null,"terms_show_text":"View Terms","terms_hide_text":"Hide Terms","initial":{"instruction_type":"normal","instruction_message":"I agree to the terms."},"unchecked":{"instruction_type":"error","instruction_message":"Please agree to the terms."},"checked":{"instruction_type":"success","instruction_message":"I agree to the terms."}},"email":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email address"},"success":{"instruction_type":"success","instruction_message":"Enter your email address"},"blank":{"instruction_type":"error","instruction_message":"Enter your email address"},"not_an_email_address":{"instruction_type":"error","instruction_message":"Make sure you have entered a valid email address"}},"note_with_tip":{"placeholder_text":"Your note here...","initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"empty":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"not_empty_initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"saving":{"instruction_type":"normal","instruction_message":"Saving note..."},"success":{"instruction_type":"success","instruction_message":"Note successfully saved!"},"error":{"instruction_type":"error","instruction_message":"Unable to save note note at this time. Please try again."}},"email_for_login_code":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email to log in."},"success":{"instruction_type":"success","instruction_message":"Enter your email to log in."},"blank":{"instruction_type":"error","instruction_message":"Enter your email to log in."},"empty":{"instruction_type":"error","instruction_message":"Enter your email to log in."}},"login_code":{"initial":{"instruction_type":"normal","instruction_message":"Check your email and enter the login code."},"success":{"instruction_type":"success","instruction_message":"Check your email and enter the login code."},"blank":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."},"empty":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."}},"stripe_all_in_one":{"initial":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"empty":{"instruction_type":"error","instruction_message":"Enter your credit card details here."},"success":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"invalid_number":{"instruction_type":"error","instruction_message":"The card number is not a valid credit card number."},"invalid_expiry_month":{"instruction_type":"error","instruction_message":"The card's expiration month is invalid."},"invalid_expiry_year":{"instruction_type":"error","instruction_message":"The card's expiration year is invalid."},"invalid_cvc":{"instruction_type":"error","instruction_message":"The card's security code is invalid."},"incorrect_number":{"instruction_type":"error","instruction_message":"The card number is incorrect."},"incomplete_number":{"instruction_type":"error","instruction_message":"The card number is incomplete."},"incomplete_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incomplete."},"incomplete_expiry":{"instruction_type":"error","instruction_message":"The card's expiration date is incomplete."},"incomplete_zip":{"instruction_type":"error","instruction_message":"The card's zip code is incomplete."},"expired_card":{"instruction_type":"error","instruction_message":"The card has expired."},"incorrect_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incorrect."},"incorrect_zip":{"instruction_type":"error","instruction_message":"The card's zip code failed validation."},"invalid_expiry_year_past":{"instruction_type":"error","instruction_message":"The card's expiration year is in the past"},"card_declined":{"instruction_type":"error","instruction_message":"The card was declined."},"missing":{"instruction_type":"error","instruction_message":"There is no card on a customer that is being charged."},"processing_error":{"instruction_type":"error","instruction_message":"An error occurred while processing the card."},"invalid_request_error":{"instruction_type":"error","instruction_message":"Unable to process this payment, please try again or use alternative method."},"invalid_sofort_country":{"instruction_type":"error","instruction_message":"The billing country is not accepted by SOFORT. Please try another country."}}}},"fetched_oembed_html":false}
Lovely review. I’m really excited to see this now 🙂
Thanks Alley. Definitely go see it if you get the chance. I like but do not love Little Miss Sunshine, but this is really quite special and very much deserves to be seen.
Pingback: Weekly Weblinks: Reboots, Remakes, and Recall | Morgan on Media
Great review of a teasing film. I’ve been thinking about the Bening-Banderas tangent and wonder whether it somehow underscores or unsettles the reality-fantasy thing. They are clearly real – and in a sense their meeting Ruby makes her more “real” – but on the other hand there’s a lot of fantasy to their life. It serves I think to both suggest different relationships and to unsettle the viewer just a little bit more.
I thought about that too, but I think the film would have been better served by actually exploring that facet of the relationship. If this actually matters as far as it concerns Ruby and Calvin, it really should have been addressed directly, I think.
And yeah, I did notice the laptop switch. Nice little sign that Calvin’s starting to acclimate himself to modern life.
Yes, I think the mother-boyfriend story wasn’t really explored well enough to make the point it might have been intending … but it’s interesting to talk about what that point might have been!
Definitely! It’s a fine talking point, but also something that really should have cropped up in the text.
PS … I found the review because I wondered if anyone else noted the typewriter/laptop switch. It was very neat I thought.
Upon further examination of the Bening-Banderas tangent (I bothered me, so I delved deeper)! It was a pure nugget of information overshadowed by its over the top stereotype environment! Benings character was never allowed to be her authentic self in her first marriage! The photo says it all! Short hair and Polo top-clearly an extension of her husband holding onto the trophy-THROPHY WIFE! An equal in a man’s world, and not a female with separate but different gifts to bring to the relationship!