If you recall, web was born as a way to help scientists share documents. Solving real problems, some times can start revolutions.
One interesting revolution may be programming for the non-programmer. If you think of programming as just a way to solve interesting problems in a flexible way, then we need a different approach to teaching programming. You need a language that is gentle, easy to understand, quick to learn and incrementally reveals its power. It does not have the limitations of a toy language or does not impose a certain approach.
One such programming language, and one of my favorites, is Python. So I am glad to see that there are efforts to create courses for Scientists and Engineers to learn it. I love the visiion behind this effort:
We are in the midst of a revolution – a fundamental change in the way scientists, engineers, and other technical professionals use computers. No longer do we need a professional programmer as an intermediary to write programs for us. Powerful personal computers and modern, high-level languages are making programming a vital tool for non-programmers.
Like the word-processing revolution that made typists obsolete, there is a saving of time and money, but the impact of this revolution is much deeper, especially for those of us whose work depends on an exploratory” or interactive kind of computing. Now we can write programs while staying focused on our project, and it is no more difficult than using a computer to write a technical report.