All of my research is related to the development of software to enable the analysis of complex nuclear energy systems. As such we work closely with those analysis communities, hopefully responding to their needs and challenges. Since we work in two main areas, both funded by the Department of Energy, it is interesting to observe and contrast how those two communities approach their individual challenges.
One community is a traditional large scale computing community, currently striving to use some of the largest computer systems in the country, and always the largest system in their own institution, to increase the fidelity of their simulations and couple the results from a number of different kinds of engineering analysis. This community is increasingly using the best practices in modern software development and data management.
The other community isn't. They are grown out of a world that only recently outgrew spreadsheet-based models, to emerge into a different closed platform of systems dynamics software. Spreadsheets are still their preferred form of data communication and management, and the idea of coupling multiple codes together is an idea that sounds like too much effort and one that they are not sure how to test.
Participating in the first of these communities is exhilarating. Participating in the second is painful. Ironically, I feel that I can make bigger difference in that second community, but only if they want it. My team is already over-committed and we can't offer to do more without additional funds and/or personnel, but we would only need to contribute a few little tools, provide a little bit of training, and we could change the way that we think about these problems.
Sometimes we say that the left hand doesn't know what the right hand is doing to describe situations when one part of an organization is interfering with the success of another part. In this case, the lack of communication between these two communities is allowing one to be left behind while still believing that they are on the leading edge. There are a few others who can help me make sure that the right hand knows what the left hand is doing, so maybe there is hope!
One community is a traditional large scale computing community, currently striving to use some of the largest computer systems in the country, and always the largest system in their own institution, to increase the fidelity of their simulations and couple the results from a number of different kinds of engineering analysis. This community is increasingly using the best practices in modern software development and data management.
The other community isn't. They are grown out of a world that only recently outgrew spreadsheet-based models, to emerge into a different closed platform of systems dynamics software. Spreadsheets are still their preferred form of data communication and management, and the idea of coupling multiple codes together is an idea that sounds like too much effort and one that they are not sure how to test.
Participating in the first of these communities is exhilarating. Participating in the second is painful. Ironically, I feel that I can make bigger difference in that second community, but only if they want it. My team is already over-committed and we can't offer to do more without additional funds and/or personnel, but we would only need to contribute a few little tools, provide a little bit of training, and we could change the way that we think about these problems.
Sometimes we say that the left hand doesn't know what the right hand is doing to describe situations when one part of an organization is interfering with the success of another part. In this case, the lack of communication between these two communities is allowing one to be left behind while still believing that they are on the leading edge. There are a few others who can help me make sure that the right hand knows what the left hand is doing, so maybe there is hope!