Please correct me if I am wrong, but I think Boris Johnson only took action when he was forced to do so.
People weren't complying with the earlier/lighter restrictions so he had to act. He'd already implemented social distancing, he'd been telling people to wash their hands, practice good hygiene, reduce travel, catch coughs/sneezes, etc. He told the likes of cafes, clubs and pubs to either practice social distancing or close.
People ignored him and just arrogantly carried on as normal. Pubs, clubs, cafes, restaurants, etc ignored him, hence why he had to close them down at a moment's notice on that Friday evening. Even that Friday afternoon, a local restaurant said it was business as normal for the Mother's day weekend. Our village pub plastered all over Facebook he was open as usual on Thursday and Friday - BOTH after they were told to social distance or close.
Same with holidays, idiots were still flying out of the UK for holidays, hen parties, etc., when it was clear the virus was out of control. What were they thinking?
Boris tried to do it the voluntary way, but the people ignored him. He was right to give people the opportunity to "self police" their social interactions, and he hoped most would do the right thing. That's why there was a very slight delay in the official binding lockdown. It's not as if he wasn't doing anything at all - voluntary restrictions/advice was being put in place day by day before that.