A recent article in Ars asked a simple question – should biologists study computer science? I think that the question is pretty much moot and the right question is this – should everyone study computer science? Personally, I envision a future where everyone needs to know a little programming to get by. I envision a future where programming skills become a basic skill that everyone needs, much like driving.
I do not envision a future where everyone would be able to code an operating system kernel of course. We do not even have that level of skills now. Some things you would still pay other experts to do. However, I do see a future where people may write simple 20 line programmes to solve simple problems at home. A friend analogised programming skills to car maintenance. As far as I know, we do simple car maintenance ourselves too. We check lubricant levels, water supply and even know how to pump our tyres and change flats when necessary. Although we could also pay others to do it for us, some little things, we would just do ourselves because it is simpler and faster to do it.
However, before that happens, we would need to be able to condense basic data structures and algorithms into something that is simple enough for a high-school kid to appreciate instead of the CLR tome or TAOCP volumes. We would also need the right tools and languages that allow people to write small and simple programmes quickly and easily. Maybe this could be researched by some programming language researchers.
In the mean time, I will endeavour to teach my niece and nephews some basic computer science. I think that it would be beneficial for them regardless of their chosen field in the future.