“learn solely by watching humans drive”
Sorry, but that won’t work. To understand what a human is doing requires another human. Not a program written by a human.
It’s not “a program” as such though. It is simulating the brains neuron functionality. Deep Neural Networks are very capable of learning difficult tasks. If the car makes a mistake it isn’t because of a bug (e.g. a line of code that didn’t check something it should), it is because the neural network had not been “trained” sufficiently. You then advance the training to include the use-case it failed at, reinforcing the right neural network paths, and get it do react as desired - then you can download the “update” to all vehicles.
Ultimately, the car will be a better driver than, at least, most. It is coming, almost every car company has plans to have them on the road in about 5 years.