I came across this short video, Can Software Save Moore's Law?, when looking for videos on programming. I like the presenter's take on the next frontier in computing. Efficient software.
Back in the early days of computing, software engineers needed to understand computers well because the computing resources were so limited that you had to know the hardware well to make the best use of it. This understanding was then embedded in programs. Nowadays, chips are so complex with so many resources that you have to know the hardware well to minimize power consumption and make the best use of those resources.
The vast increase in computing resources in the last 40 years has caused programmers to get sloppy. And why not? Who would optimize software to minimize computing time if your next computer was going to be 2X the speed of your last one at 70% of the cost? That slop will have to be wrung out because the cost of computing is no longer primarily measured in dollars. It is primarily measured in watts these days.
Personally, I like the way the Forth language causes you to think about problems. "Can I factor that in a a way to make it more efficient?" I especially like Thinking Forth - free download as an introduction to those methods.
M. Simon's e-mail can be found on the sidebar at Space-Time Productions.
Engineering is the art of making what you want from what you can get at a profit.