One of the keynotes expanded on the software theme. Gregory Wilson from the Software Carpentry (http://software-carpentry.org/) project spoke about "Public Health and Scientific Computing" . The talk highlighted the need that as we become more depdent on eScience, researchers not only need to be educated in how to use the outputs of eScience (the data scientist) but also need need to be given the skills to manage the software they produce (software engineer).
Clearly, training up all researchers to be software engineers is challenging given the time pressure on most degree courses - especially as it is not garantted that everyone will go into research! But providng intensive software engineering courses lasting from 2 days to 2 weeks for graduates has been shown to have the greatet impact and uptake. However, even with this approach, recalled Wilson, it is important to teach the students what they will see value in first rather than focusing on fundamental computing science concepts.
Workforce education or the development of human capital represents fundamental areas that we need to invest in to esnure that research software is developed effectively by those in the community so that is maintainable and sustainable. Another area of investment that would benefit the scientific programmer is having access to an easily reusable library of software modules. This would allow researchers to build on the shoulders of those that came before rather than stepping on their toes!