This talk by Bret Victor is an eye opener. It was delivered by Bret in 2013. He gave this talk assuming we are in 1973 and then talked about how future of programming will look like in 2013. He talked about various CS discoveries and programming approaches people were trying during 1960 and 1970 era. At that time, nobody new what is correct way to program so they were experimenting with many different approaches. Nobody was fixated on one right approach so different approaches were tried.