Photo: FX/Copyright 2023, FX Networks. All rights reserved.
When Dave is over, what will the shape of our protagonist’s journey look like? Throughout these three seasons, Dave’s rise to fame has frequently followed an anti-hero arc, with his selfishness driving away the people he cares about. But while season one followed a fairly linear path, Dave’s story line hasn’t been as straightforward since then. Season two ended with him finally helping out GaTa, one of the first selfless decisions we’ve seen him make on the show. And season three has bopped all around with Dave’s likability index, hinting at growth only to undercut it at unexpected moments.
There’s a risk to plotting out a character arc like that; plenty of dramas feature characters who fail to change, but it’s harder to accept one who flips back and forth so often. Before long, it’s possible that cycle will begin wearing out its welcome. But it’s hard to argue with the format when it produces an episode like “Dream Girl,” which feels like the culmination of several different stories simultaneously, including a larger thematic one.
The episode begins with a glimpse of Emma’s documentary for the Looking for Love tour. Dave tells GaTa (at the height of his promiscuity) that women are not objects — only for director Shannon Murphy to cut ironically to an eerie scene of an elite sex-doll manufacturer putting together his lifelike creations. It turns out this $7,000 doll, complete with a device for “warming her orifices,” now belongs to one Dave Burd (again, the guy we just saw insist that women weren’t objects). It’s a good day for him, all things considered, even if he’s experiencing periodic sound-swallowing panic while waiting for a text back from Rachel McAdams. He even has his girlfriend’s support on his new purchase; she’s more fascinated by it than weirded out, just like she was with his Scroguard.
But that frankly incredible show of courtesy no longer seems to hold much novelty to Dave. Think about the episode’s title: What says “dream girl” like someone willing to embrace Dave’s oddest quirks and fetishes and immediately accept his apology after learning about his death scam? Dave says during the documentary that his type is the sweet “girl next door,” and Robyn sure seems to fit.
But the title also refers, of course, to Rachel McAdams, the subject of Dave’s latest song. The guy just found out that his girlfriend-not-girlfriend is moving to Los Angeles, but he ends up dreaming mainly about Rachel — not just about filming a sex scene with her, but about meeting celebrities like Drake through her. When Robyn does appear in his dream, she’s an intruder, an unpleasant reminder of the real world. The next day, Dave asks Emma to cut the Robyn footage out of the doc, feeling extra pressure by the “sudden” escalation of his relationship.
There’s so much to unpack about the “friends and family” screening of Emma’s tour documentary, which accomplishes a shocking amount in a short span of time. When we jump in, the movie starts to get pretty critical of Dave; we hear from Emma, Mike, and Elz about how difficult it is to work with him, to the point that Mike and Elz chat about their preferred methods for murdering him. From there, the doc transforms into this scathing interrogation of Dave’s toxic perfectionism and how it manifests itself in every area of his life, including his search for romantic love.
In TV and movies, it’s often hard to create in-universe art that achieves what the characters claim it does, and I did feel some skepticism about Emma’s film; the editing style makes it hard to believe it could go on for a full 90 minutes. But it ultimately feels kind of brilliant anyway because Emma’s analysis of her friend is legitimately perceptive (which, of course, means that Vanessa McGee’s script is perceptive). Showcasing Dave’s behavior from their editing sessions feels like swift retribution for how snotty he was to Emma earlier, and the subsequent examples of his complaining — a good sandwich with not-quite-good-enough bread, a couch with not-quite-right pillows — are just as effective symbols for his neurosis.
Sometimes I wish Dave would take more time away from Dave, doing more episodes like Elz and Emma’s mini-rom-com from season one. But I really have enjoyed this season’s method of giving them small but coherent arcs that play out alongside Dave’s. Here, the doc pulls in perspectives from the whole ensemble to clarify their various standings with Dave — hinting why Elz might stick with his childhood best friend despite how difficult he is, for example, and acknowledging Mike’s unhealthy need for approval from a male figure. (GaTa is the most unambiguously complimentary, of course.)
Following the screening, two major character-defining confrontations happen. In the first, Dave offers Emma his compliments while presumptuously assuming she’ll acquiesce to his suggested changes. But in one of the most satisfying moments of the season, she firmly tells him that she isn’t compromising her vision, and “there will be no more notes.” Dave has been pushing Emma around for a while without even paying her, so this is richly deserved. It goes back to “Harrison Ave,” when he repeatedly ignored her filming suggestions only to finally cave when there were no options left — and you could take it back even further to their soured relationship in season two’s “Ad Man.”
“Dream Girl” is a sequel to “Harrison Ave” in more ways than one: Like that episode, it’s specifically about how Dave thinks about the women in his life, and like that episode, it ends up being a ruthless examination of the entitled “nice guy.” This time, it does that through the slow, painful dissolution of his relationship with Robyn.
I’ve had my problems with Robyn over the course of this season, never totally buying her relationship with Dave. But while I still think the Robyn-centric episodes could’ve been stronger and her chemistry with Dave better, in retrospect, those appearances served an important purpose. She was the perfect girlfriend, the girl next door Dave insisted he wanted. Dave got exactly what he set out for in the premiere, but it wasn’t enough. She might be the one for him, but he won’t let himself appreciate and accept that.
Everything Robyn says after the screening is completely true, from her description of herself as “the understudy to his grand version of love” to her aching remark about wanting to be the thing that excites him to her diagnosis of Dave as somebody perpetually looking for love without actually wanting to find it. It all comes back to that perfectionism issue: Like Ally alluded to back in “Wisconsin,” Dave expects everyone else to be perfect despite his own myriad imperfections.
I love the way “Dream Girl” threads together Dave’s toxic perfectionism with his toxic masculinity, showing the way they build on each other and end up hurting all the women in his life. Dave is not an abuser, but a particular strain of entitlement is running through his relationships with women, whether it’s Robyn, Emma, Ally, or his childhood crush Brittany. Multiple glimpses of the tour doc in this episode pointedly show Dave giving GaTa shit for his womanizing, but he’s being a hypocrite in those moments. Dave’s misogyny is more insidious and below the surface.
In the final scene, Dave fucks his premium sex doll, the most obvious symbol yet of his comfort with dehumanizing the women in his life. (It’s not a coincidence that earlier in this episode, he said her lipstick made her look like a whore.) He can’t stop reducing them to their purposes: Emma is just an employee, while Robyn is an ever-flowing source of midwestern chill disguised as a girlfriend. And this thing, with the dead eyes and the hair slipping off its scalp, is for fucking.
In the final moment of the episode, Dave finally gets a text back from Rachel McAdams about her availability, proving Robyn’s prediction correct. What remains to be seen is whether a date with his dream girl would bring Dave fulfillment at this point; after all, as I said, he already had his real dream girl, and now he may have lost her forever. I’m more curious than ever about where the show will go with this arc — with one episode left, is Dave heading for a big moral compromise (like the end of season one) or a rare moment of perspective (like the end of season two)? I’m not sure Dave can spend its whole run alternating between the two, but then again, maybe this very episode proved me wrong.
Dick Jokes
• Still no real arc to speak of for Elz this season, except just generally being in his flop era. But the scene when GaTa shows him the trailer for Nut Haus is great, especially the awkward shoehorning of both sex addiction and mental illness: “They can’t have sex or freak out.” Elz tells him he’s being exploited, but at this point, GaTa doesn’t mind. Maybe in season four we’ll see some of the show, or potentially see an even wealthier GaTa after he wins?
• Nice callback with Dave Googling “same dances moves every time,” similar to the pet peeve he brought up in “Wisconsin.”
• I laughed a lot at Rachel McAdams repeating her iconic quote from The Notebook: “If you’re a bird, I’m a bird.”
• I do really like Emma’s choice to end the doc with Dave asking, “Is this the only possible ending?” And fun to see the Dave credits typeface for “Directed by Emma Wu.”
• Remember back in “Wisconsin” when Robyn was annoyed by Dave’s comment about her making some other guy’s dreams come true? In retrospect, that feels like foreshadowing for the “dream girl” idea coming back into play here. The same goes for Ally fixating on Roy calling her his dream girl in that same episode. For Dave right now, Robyn doesn’t fit in that category; in his view, she may be above all the lonely anonymous dorks in Wisconsin, but he’s still above her.
• It turns out the real Lil Dicky has tweetedseveral times about his love for Rachel McAdams, going back to 2013. That adds a whole other meta-level to this.
• This is the most I’ve ever said the phrase “dream girl.”
By submitting your email, you agree to our
Terms and Privacy Notice
and to receive email correspondence from us. This site is protected by reCAPTCHA and the Google
Privacy Policy and
Terms of Service apply.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
Already a subscriber?
Already a subscriber?
`;
// integrate Sub(x) scripts and elements
if (hostname !== 'subs.nymag.com') { // do not integrate on this subdomain
document.head.appendChild(trackingScript);
document.body.insertAdjacentHTML('beforeend', subXAnimationElements);
}
There was an error processing the request. Please try again later."}).catch(e=>console.error("Error verifying email: ",e)))(r.querySelector(".content"),o.bannerCTAVerification)})):(l.remove(),s.remove()),o.dismissable||n.remove(),o.useAlertIcon||a.remove(),r.classList.add("show"),n.addEventListener("click",()=>{u(),r.classList.remove("show")})}else r.remove()}});
}, {"1":1,"6":6,"12":12,"35":35,"40":40}];
window.modules["global-nav.client"] = [function(require,module,exports){"use strict";const dom=require(4),auth=require(12),signInButton=dom.find(".user-signin"),signOutButton=dom.find(".user-signout"),globalNav=dom.find('[class^="global-nav"]'),body=dom.find("body"),dropdownItems=dom.findAll(".dropdown-wrap"),gtm=require(1),appendLandingPageParams=require(135),pageUri=require(124).getPageUri(),subscriptionPromoLinks=dom.findAll(".persist-params"),searchString=window.location.search||"";function closeDropdowns(e){let n=globalNav.querySelectorAll(".dropdown.open");dropdownItems.forEach(function(t){let o=t.querySelector(".dropdown");!n||t.contains(e.target)&&27!==e.keyCode||o.classList.remove("open")})}function gtmSendReport(e,n,t){let o={eventCategory:"ecommerce",eventAction:"componentClick",brand:e,dimension23:"global-nav",list:pageUri,pageZone:"header",variant:"nav-link"};"global-nav-link"===t&&(o.eventLabel=n.href),gtm.reportNow(o)}function updateElementTargetUrlsIfQueryStrings(e){if(searchString){const n=new URLSearchParams(searchString);let t=e.href;if(t.includes("?")){const o=t.split("?"),i=new URLSearchParams(o[1]);for(let e of n.entries())i.set(e[0],e[1]);t=`${o[0]}?${i.toString()}`,e.href=t}else e.href=`${t}?${n.toString()}`}}function init(e){const n=e.querySelectorAll(".to-landing-page");window.addEventListener("auth:init",()=>{signInButton.addEventListener("click",function(e){e.preventDefault(),auth.showEmbeddedLoginFlow("top navigation")}),signOutButton.addEventListener("click",function(e){e.preventDefault(),gtmSendReport("Sign Out",e.target,"user-info-link"),auth.logout()}),auth.isAuthenticated()&&e.classList.add("signed-in"),auth.isSubscriber()&&e.classList.add("subscribed"),e.querySelectorAll(".user-link").forEach(e=>{e.classList.add("active")}),subscriptionPromoLinks.forEach(e=>{updateElementTargetUrlsIfQueryStrings(e)}),appendLandingPageParams(n)})}dropdownItems.forEach(function(e){e.addEventListener("click",function(){e.querySelector(".dropdown").classList.toggle("open")})}),body.addEventListener("click",closeDropdowns),document.addEventListener("keydown",closeDropdowns),globalNav.addEventListener("click",function(e){let n=e.target;n.classList.contains("global-nav-track")&>mSendReport(n.text,n,"global-nav-link")}),module.exports=init;
}, {"1":1,"4":4,"12":12,"124":124,"135":135}];
window.modules["aaa-module-mounting.legacy"] = [function(require,module,exports){"use strict";const _pickBy=require(221),_each=require(406),Fingerprint2=require(408),DS=require(407),Eventify=require(246);function registerGlobals(){window.DS=DS,window.Eventify=Eventify,window.Fingerprint2=Fingerprint2,DS.value("Eventify",Eventify),DS.value("Fingerprint2",Fingerprint2),DS.value("$document",window.document),DS.value("$window",window)}function mountDollarSliceComponents(){DS.service("components",["$document","$module",function(e,n){var o=_pickBy(n.definitions,e=>e.providerStrategy===n.providers.controller),r=Object.keys(o);function t(e){return o=>{try{n.get(e,o)}catch(e){logMountError(o,e)}}}_each(r,n=>{var o=e.querySelectorAll('[data-uri*="/_components/'+n+'/"]'),r=e.querySelectorAll('[data-uri$="/_components/'+n+'"]');_each(o,t(n)),_each(r,t(n))}),this.components=r}]),DS.get("components")}function logMountError(e,n){const o=e.outerHTML.slice(0,e.outerHTML.indexOf(e.innerHTML));console.error("Error attaching controller to "+o,n)}registerGlobals(),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{mountDollarSliceComponents()}):mountDollarSliceComponents();
}, {"221":221,"246":246,"406":406,"407":407,"408":408}];
window.modules["ads.legacy"] = [function(require,module,exports){"use strict";const _map=require(118),_forEach=require(107),_isString=require(268),_intersectionWith=require(409),_isEqual=require(274),_each=require(406),_debounce=require(182),_sortBy=require(205),page=require(124),visit=require(114);DS.service("adService",["Eventify","$cid","$document","$window",function(e,t,a,i){var o,n,s,r,d,c,u,l,g={},p=this,h=[],f=visit.getQueryParamsObject(["utm_campaign"]),m=document.querySelector('script[data-type="ad-a9"]'),b=[],w=!1,v=[],y=document.querySelector('script[data-name="ad-doubleverify"]');document.querySelector('script[data-name="concert-ads"]')||(i.NYM={},i.NYM.analytics={},i.NYM.analytics.adStartTime=i.performance.now(),i.googletag=i.googletag||{},i.googletag.cmd=i.googletag.cmd||[],u=i.googletag,(m||y)&&(i.googletag.cmd=i.googletag.cmd||[],i.googletag.cmd.push(function(){i.googletag.pubads().disableInitialLoad()})),m&&(l=i.setInterval(function(){void 0!==window.apstag&&void 0!==window.apstag.timeout&&(i.clearInterval(l),window.apstag.cleared=!0,l=null)},10),setTimeout(function(){l&&(i.clearInterval(l),i.googletag.pubads().refresh(),window.apstag||console.log("MESSAGE: Timeout for A9 load exceeded, aborting"))},500)),y&&(b.push(new Promise(function(e){w?e():v.push(e)})),c=i.setTimeout(T,2500)),o=function(e){var t,a,o=e.data,n=[];return o.loaded?e:(o.loaded=!0,t=null,(t=o.sizes?u.defineSlot(o.name,o.sizes,o.id).addService(u.pubads()):u.defineOutOfPageSlot(o.name,o.id).addService(u.pubads())).setTargeting("adid",o.id),f.hasOwnProperty("utm_campaign")&&t.setTargeting("utmcamp",f.utm_campaign),a=p.getAdCount(o.label),t.setTargeting("label",o.label+"_"+o.site+"-"+a),u.display(o.id),u.pubads().addEventListener("slotOnload",function(){i.NYM.analytics.firstAdLoadTime||(i.NYM.analytics.firstAdLoadTime=i.performance.now(),i.NYM.analytics.firstAdLoadLabel=e.data.label)}),n=_(o),Promise.all(b).then(function(){n?window.apstag&&window.apstag.cleared?window.apstag.fetchBids({slots:[n],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([t],{changeCorrelator:!1})})}):y&&u.pubads().refresh([t],{changeCorrelator:!1}):u.pubads().refresh([t],{changeCorrelator:!1})}),e.slot=t,e)},n=function(e){var a,i,o,n=t(),s=e.getAttribute("data-name"),r=e.getAttribute("data-sizes"),d=e.getAttribute("data-label"),c=e.getAttribute("data-site");n=e.id,r&&r.length?(r=r.split(","),a=[],_map(r,function(e){e=e.split("x"),i=parseInt(e[0]),o=parseInt(e[1]),a.push([i,o])})):(e.classList.add("oop"),a=!1),this.data={id:n,name:s,sizes:a,loaded:!1,label:d,site:c},g[n]=this},r=function(e){u.cmd.push(function(){var t=o(e);g[e.data.id]=t})},s=function(e){var t=[];e.slot?(t=_(e))&&window.apstag&&window.apstag.cleared&&window.apstag.fetchBids({slots:[t],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([e.slot],{changeCorrelator:!1})})}):e&&r(e)},u.cmd.push(function(){var e,t,o,n=page.getMeta("article:tag"),s=page.getMeta("author"),r=i.location.href,d=(e=a.head.querySelector(".head-gtm"),t=a.body.querySelector(".gtm"),e&&"top"===e.getAttribute("data-gtm")?"gtmtop":t&&"bottom"===t.getAttribute("data-gtm")?"gtmbottom":"");o=[],_forEach([n,s,d],function(e){_forEach(e.split(","),function(e){(e=e.trim().toLowerCase().replace(/\s/g,"-").replace(/\'|\’/g,"")).length&&o.push(e)})}),u.pubads().setTargeting("kw",o),u.pubads().setTargeting("entry_group",o),r=r.slice(r.lastIndexOf("/")+1),u.pubads().setTargeting("pn",r),u.companionAds().setRefreshUnfilledSlots(!0),u.pubads().enableAsyncRendering(),u.enableServices()}),this.load=r,this.create=function(e){return new n(e)},this.refresh=function(e){var t;_isString(e)?(t=this.getById(e),s(t)):s(e)},this.remove=function(e){var t=e.data.id;a.getElementById(t).innerHTML=""},this.getAdCount=function(e){var t,a=0,i=Object.keys(g);return _each(i,function(i){(t=g[i]).data.loaded&&t.data.label===e&&a++}),a},this.getById=function(e){return g[e]},d=_debounce(function(){var e={TopLeaderboard:1,RightColTopMPU:2,outOfPage:99,"homepageTakeover/TopLeaderboard":1},t=_sortBy(h,function(t){return e[t.data.label]||10});_forEach(t,function(e){return e.data.sizes?r(e):i.setTimeout(function(){r(e)},2e3)}),y&&window.PQ.cmd.push(()=>{try{window.PQ.loadSignals(["ids","bsc","vlp"],T)}catch(e){T(),console.error(`There has been an error loading Double Verify signals: ${e}`)}}),h=[]},10),this.addToPageLoadQueue=function(e){h.push(e),d()});function _(e){var t,a=e.sizes;return a=_intersectionWith(a,[[970,250],[970,90],[728,90],[300,600],[300,250],[320,100],[320,50]],_isEqual),e.sizes&&e.sizes.length&&(t={slotID:e.id,sizes:a,slotName:e.label}),t}function T(){i.clearTimeout(c),w=!0,_forEach(v,function(e){e()})}}]);
}, {"107":107,"114":114,"118":118,"124":124,"182":182,"205":205,"268":268,"274":274,"406":406,"409":409}];
window.modules["cid.legacy"] = [function(require,module,exports){"use strict";DS.service("$cid",function(){var r=Math.floor(100*Math.random());return function(){return"cid-"+ ++r}});
}, {}];
window.modules["client.legacy"] = [function(require,module,exports){"use strict";require("cid.legacy"),require("ads.legacy"),require("facebook.legacy"),require("aaa-module-mounting.legacy");
}, {"cid.legacy":"cid.legacy","ads.legacy":"ads.legacy","facebook.legacy":"facebook.legacy","aaa-module-mounting.legacy":"aaa-module-mounting.legacy"}];
window.modules["facebook.legacy"] = [function(require,module,exports){"use strict";DS.service("facebook",[function(){this.fb=function(i){window.FB&&window.FB[i].apply(this,Array.prototype.slice.call(arguments,1))}}]);
}, {}];
require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o typeof key === 'string' && key.match(/\.legacy$/)).forEach(key => window.require(key));
}
function tryToMount(fn, el, name) {
try {
fn(el); // init the controller
} catch (e) {
const elementTag = el.outerHTML.slice(0, el.outerHTML.indexOf(el.innerHTML));
console.error(`Error initializing controller for "${name}" on "${elementTag}"`, e);
}
}
/**
* mount client.js component controllers
*/
function mountComponentModules() {
Object.keys(window.modules).filter(key => typeof key === 'string' && key.match(/\.client$/)).forEach(key => {
let controllerFn = window.require(key);
if (typeof controllerFn === 'function') {
const name = key.replace('.client', ''),
instancesSelector = `[data-uri*="_components/${name}/"]`,
defaultSelector = `[data-uri$="_components${name}"]`,
instances = document.querySelectorAll(instancesSelector),
defaults = document.querySelectorAll(defaultSelector);
for (let el of instances) {
tryToMount(controllerFn, el, name);
}
for (let el of defaults) {
tryToMount(controllerFn, el, name);
}
}
});
}
// Make sure that a `window.process.env.NODE_ENV` is available in the client for any dependencies,
// services, or components that could require it
// note: the `` value is swapped for the actual environment variable in /lib/cmd/compile/scripts.js
window.process = window.process || {};
window.process.env = window.process.env || {};
if (!window.process.env.NODE_ENV) {
window.process.env.NODE_ENV = '';
}
// note: legacy controllers that require legacy services (e.g. dollar-slice) must
// wait for DOMContentLoaded to initialize themselves, as the files themselves must be mounted first
mountLegacyServices();
mountComponentModules();
// ]]