The 25-year-old walks up the driveway of a redbrick house, on the outermost fringes of west London, and knocks. And waits. And rearranges his collar.
No answer. “The problem with a sunny day like this,” he says with a tight smile, “is that everyone is out.”
If Milani pulls it off, it would be one of the biggest earthquakes in British political history.
Never before has a sitting prime minister lost their seat in a general election. And while Johnson is yet to call an election — though speculation is rife there will be one before the year is out — Milani is wasting no time hitting the streets in his bid to oust the prime minister.
“Can you imagine,” he said wistfully, “that moment when we stand on stage and the returning officer reads out the result … a 25-year-old local resident has unseated the prime minister for the first time in history.”
It’s not as far-fetched as it sounds. What was traditionally a safe Conservative seat has in recent years shifted to marginal. In the last election in 2017, Johnson’s majority more than halved, to just over 5,000 votes.
The constituency was created in 2010, due to boundary changes, and has been Conservative ever since.
Among them is this young Labour candidate and comic book fan whose favorite character is Superman.
What appeals to Milani most about his beloved comic book collection is “the classic good versus evil story.” It’s a narrative he comes back to often.
Milani lumps Boris in the same basket as US President Donald Trump and Brazilian President Jair Bolsonaro, who he says represent a “brazen, right-wing, nasty style of politics.”
Meanwhile, he sees himself as part of a “wave of young progressive thinkers around the world.”
He compared Johnson’s privileged upbringing and Eton schooling with his own childhood growing up on a social housing estate and a single mother who “struggled to pay the electricity bill.”
“I wasn’t chiselled from birth to be an MP or prime minister,” said the political newcomer who was born into a Muslim family in Iran and moved to the UK aged five.
Until he was selected as the Labour candidate in July, Milani was vice-president of the National Union of Students. And it was as a student at Brunel University in 2015 that he first encountered Johnson during a local hustings — engaging in a lively “back and forth” over the merit of ballot boxes on campus.
He said if he met Johnson again, he’d “love to show him around Uxbridge.”
Towards the end of Johnson’s stint as London mayor, the celebrity politician was “parachuted in,” as Milani describes it, to the safe Conservative seat and elected MP in 2015.
The seat had a secure Conservative majority, and was as good a place as any for Johnson to make his return to Parliament.
But “he’s never lived here,” said Milani, gesturing at the neat suburban streets. “If you dropped him at the end of the road he wouldn’t be able to find his way home.”
“I grew up here — I use the same hospitals as the people here, I studied in the same schools as people here,” Milani said. “And I think people deserve leaders who understand what it’s like to live like us.”
He points to the local issue of plans for a third runway at Heathrow Airport, a stone’s throw from this part of London.
“We have some of the worst air (quality) in London,” says Milani. “So when I say Boris is not from here, I mean he literally doesn’t breathe the same air we breathe.”
CNN contacted Johnson’s office for comment, but had not received a response at time of publishing.
Brazenly offensive comments
In Uxbridge town center, Milani greeted the owner of a bustling Greek café with the familiarity of an old friend.
That said, Milani’s track record on offensive comments isn’t exactly squeaky clean.
Milani has publicly apologized for those comments, which he says he made as a teenager. He was quick to add that “doesn’t make them right.”
He said he had since “taken serious steps to gain people’s trust,” like visiting Auschwitz, reaching out to the Jewish community, and doing “anti-Semitism training.”
Shift to the left?
For the local residents milling around Uxbridge’s main shopping center, the biggest question mark hanging over Milani is, well, who is he?
No one had heard of the Labour candidate gunning to unseat Johnson. But there was a mixed bag of Conservative and Labour support.
One of them, 71-year-old Peter Hatcher, said he would continue voting for Johnson because he wants him “to do what he says he’s going to do” — namely, deliver Brexit.
Hatcher, like the majority of people in this constituency, voted to exit the EU in the 2016 referendum. Johnson was a key figure in the Leave campaign and experts say his chances of winning the next election will largely be down to whether he can deliver before the October 31 deadline.
Like many London boroughs, Uxbridge and South Ruislip has “gradually been shifting to the left” over the last 20 years — though “more slowly” than others — said Professor Tony Travers, director of the Institute of Public Affairs at the London School of Economics.
A lot will come down to timing — whether an election is called before or after Brexit, added Travers.
He said the “best backdrop” for Johnson at the next election — and likewise the worst for Milani — would be if “Brexit has happened and it hasn’t proved a total disaster.”
It would allow Johnson to say he delivered on his promise, said Travers.
Come Brexit or blazing sunshine, Milani is giving it his all.