5 is a lot younger than 9. In fact developmentally it's a lot younger than the 45% chronologically younger it is.
Once a medical entomologist I was working with came to me with a flow chart he'd done in Visio. "I need a program that can do this," he said. "I've looked at different modeling applications but it won't be easy in any of them. I'm pretty sure I'll need custom software."
I glanced at his flow chart, scribbled a polynomial on a scrap of paper and handed it to him. "There. Plug that into Excel and you're good to go."
He was flabbergasted. "How did you do that?"
"My job isn't writing programs," I said. "My job is transforming hard problems into easy ones. I only write actual software to prove I'm right."
Coding as an academic activity is a very narrow intellectual pursuit. Coding as a real life activity draws on a lifetime of intellectual experiences, both academic and non-academic.
Children at the age of 5 should be preparing for those experiences. If you want to know what kids that age should be doing, you should look at what public television shows like Sesame Street and Arthur targeted at them depict them doing. They go outside and play. They explore. They make real physical things. They make friends (and enemies). They express themselves by participating in art and music. They learn to deal with winning and losing by playing games.
You know the one thing that kids on those programs almost never do? Watch TV. Real kids spend way too much time in front of screens.
Now I'm all for giving 9 year-olds a taste of programming. Seymour Papert did wonderful work along those lines, including with children as young as the fifth grade -- roughly 10 years old. There isn't much difference between a 10 and a 9 year old, but there's a huge difference between a 5 and 6 year-old.
Teaching a 5 year-old about coding is just virtue signalling. It's not something you do for the kid, it's something you do for your reputation.