But do area codes serve any purpose in the VoIP world? If not, why would BT continue to maintain and assign them?
Keeping area codes is the easiest thing to do
There's nothing to maintain.
Assigning them is no work, they are assigned automatically based on area, obviously.
What's the alternative?
Having newly issued numbers be totally random or assign any old area code to anyone?
I can't think of a viable, working alternative to area codes that wouldn't cause considerable confusion for no gain.
Everyone with a current landline would have their number starting with an identical area code to everyone else around them.
Anyone who was issued a new number would be on a different numbering system.
Isn't it just easier to keep area codes assigned as they are?
It's easy enough to enter the area code when dialing a local number. I do it on my mobile phone most days.