I'm looking forward to teaching our department's class Computer Applications in Energy Management and Design. My plan is to teach students the most general concepts that will allow them to learn any software package. This class needs to prepare folks with an interest in modeling buildings, performing renewable energy financial analysis, or carbon inventories. Rather than attempt to teach a software package for each of these, my goal is to find the common characteristics and teach those as fundamentals.
The curriculum will start with the basics of how we represent numbers on the computer since the leap from paper and calculator to a computer is difficult for many students. I'll then walk them through tools of increasing complexity from a calculator to a spreadsheet to a scientific computing environment. We will cover the basics of digesting and organizing data from weather stations or energy use. Students will analyze data to uncover patterns or metrics from the data. Most importantly, I want to cover techniques to present data and influence decisions and behavior. I stress in my classes that any computation is used to support a decision. Creating confidence in that decision through communication is as important as the details of the computation.
As for the technology stack, I'm going to use Python and Google Sheets as the main computational tools. We will also use the Pandas data library since it allows a spreadsheet-like metaphor for students and thus eases the transition to a scripting environment. These are freely available to our students and can be used in cloud environments. The hosted environment is key because I've seen installation headaches consume large amounts of class time. On the Python side, it is possible to freeze the versions of software to prevent compatibility problems from year to year in the class.
A main goal is to introduce students to these tools so that they know they are available. Often the barrier to doing something is knowing that it can be done. I don't expect students to master every technique, but I expect them to find the resources to execute it in the future. Students leaving this class will have a foundation on which to build a valuable ability in data analysis and influence.