Disagree. Cars are inefficient cause most of the time they are parked doing nothing. By having cheap robotaxis, people are gonna buy fewer cars, the traffic is gonna get better cause cars won't spend so much time checking for parking etc. So it definitely makes sense, but executing it requires solving autonomous driving, which seems to be harder than initially though.
Besides the point, BMW are pretty shit in this aspect. Waymo (Alphabet) and Cruise (GM) are leading, Tesla is the best of the rest, then there are many other companies ahead of BMW. But most think that this is a two way race between Waymo and Cruise, with Tesla a distant third.
It really is different type of code. Coding neural nets is not that hard, training them is harder. In many ways, the real code is the weights of the network, which are a function of the algorithm and the data, not the Python/C++ script. While there are human-related bugs there, most 'bugs' are gonna be neural net-related so different types of bugs.
A blog post that explains this better from ex Tesla's senior director, who lead Tesla's autopilot until a year ago (though he might have been at OpenAI back then) Andrej Karpathy:
https://karpathy.medium.com/software-2-0-a64152b37c35
Everything he said there still stands, just that now the number of weights is in hundreds of billions, instead of millions (some models have reached trillion+ weights). Also, back then (2017) different domains (vision, NLP, speech) used different types of networks, now all are converging to a single type (Transformers).
It depends where. In Europe, I agree. In the US where the cities are far more spread and the roads are bigger, then no, public transport is not the answer. Don't know much about other regions.