Rather than building these data analysis/visualization programs from scratch each time, my thought is that scientists should instead be writing them as modules for a data workflow application like RapidMiner.
If you haven't heard of RapidMiner, you basically edit a flowchart where each step takes inputs and outputs, eg take some data and make a histogram, or perform a clustering analysis.
If you haven't heard of RapidMiner, you basically edit a flowchart where each step takes inputs and outputs, eg take some data and make a histogram, or perform a clustering analysis.
Video of someone demoing it: http://www.youtube.com/watch?v=TNESlvXp47E
This way, the scientists can focus on the algorithms and not have to worry about all the other details of creating useable, maintainable software.