Vallorie Peridier is an associate professor of mechanical engineering at Temple University in Philadelphia, Pennsylvania. She is also the university-wide coordinator for the quantitative literacy, science and technology courses offered in the general education program curriculum taken by all Temple University undergraduates.
Project: A Twelve-Session Micro-Course in the Wolfram Language to Teach Coding and Computational Thinking to Incoming College Freshmen
In the 2016–2017 academic year, Temple University will pilot an innovative modular course, tentatively entitled “Demystifying Technology.” The course consists of self-contained micro-courses given in six modular topic areas, including algorithmic thinking, big data and privacy, entrepreneurship and self-expression and so forth. Each micro-course is exactly two weeks long, except for the “coding” module, which is four weeks in length. The student chooses a micro-course in each of the six topic areas and takes them sequentially.
In the context of the above piloted course, I wish to develop a module for the four-week coding module called “Introduction to Computational Thinking in the Wolfram Language.”
A capacity for computational thinking is, to me, perhaps one of the most empowering capabilities that a student could develop. Furthermore, in my view, the Wolfram Language seems an especially promising vehicle to teach computational/algorithmic thinking, owing to the language’s overall design, elegance and profoundly systematic implementation.
The choice of using the Wolfram Language to teach computational thinking has several further advantages in the context of this proposed “coding” micro-course. First, students can express quite powerful algorithms in a very concise fashion; this will be motivational. Second, students will no doubt make the connection between the Wolfram Language and Wolfram|Alpha, and will be curious to learn more. Finally, I just really like the Wolfram Language and feel that I would enjoy teaching this course.
My goals for this project are:
- To map out specifically the “must do” and “would like to do” course learning objectives
- To map out the sequence of topics and demonstration/lecture in each of the twelve classes
- To possibly develop a specific syllabus and activities/assignments
Considerations in the development of this course include:
- The course will likely be given in a computer lab classroom. However, Temple students are not required to own a computer, and this may impact the course in unanticipated ways.
- Incoming freshmen represent an enormous range of backgrounds and native ability vis-á-vis computational thinking. Each assignment and activity should be designed to interest and accommodate the anticipated diversity of the students.