Advancing Coding Skills, Teamwork & Computational Thinking at the Wolfram Emerging Leaders Program
April 21, 2020 — Rory Foulger, Instructional Designer & Technologist, Outreach & Communications
Computational thinking is an increasingly relevant and important skill to develop. The ability to break down problems into their component parts, and to piece together a solution quickly and accurately, is important for a variety of careers and pursuits in the 21st century. Even more important, perhaps, is that this skill enables you to express ideas clearly enough so that even a computer can understand them.
My role at Wolfram Research focuses on building programs to explore and learn computational thinking and coding using Wolfram technologies, primarily for high-school and college students. After mentoring at the Wolfram High School Summer Camp in 2019, I worked to build the Wolfram Emerging Leaders Program, a semester-long deep dive into computational thinking for Summer Camp alumni.
Wolfram High School Summer Camp
The Wolfram High School Summer Camp is a two-week, project-based program aimed at talented high schoolers from around the world. The program usually takes place in person, but in response to the COVID-19 pandemic, 2020’s Summer Camp will be a fully digital experience. Wolfram employees are seasoned experts at working and teaching remotely, and we’re looking forward to using that expertise while running our summer programs! The first few days are devoted to getting to know the Wolfram Language. Through a combination of traditional classroom lessons, active-learning exercises and coding challenges, students quickly learn how to translate their ideas into something computable—the core skill of computational thinking.
Once students have grasped the fundamentals of the Wolfram Language and developed their computational thinking skills in a controlled environment, they are unleashed on an independent project for the duration of the camp. With the support of an expert mentor, students take their projects from a short description, worked out and agreed upon with Stephen Wolfram, to a finished product.
Our students come from a variety of educational backgrounds: some have taken computer science classes at school; some have learned to code on their own; some have never coded at all before applying to the camp. And for many students, it’s the first time they’ve had an opportunity to immerse themselves in a project for any length of time. Oftentimes, it’s also the first chance they’ve had to control project outcomes.
The students create amazingly high-quality projects at the intersection of their own passions and rapidly expanding Wolfram Language skills. In 2019, projects ranged from automatically identifying and displaying meter in Latin poetry, to tracking movement in a squash game, to tricking neural networks into identifying images incorrectly. The variety in projects was further evidence for me of the extraordinary talent pool the camp brings in.
Wolfram Emerging Leaders Program
The Wolfram Emerging Leaders Program, affectionately nicknamed WELP, takes a selection of the Summer Camp students and asks them to join us for 14 weeks to complete a remote group project. If the Wolfram High School Summer Camp is a crash course in computational thinking, then the Wolfram Emerging Leaders Program is a deep dive into project work, team management and long-term development.
The first thing we do is speak to all the students about their interests and split them into groups consisting of three to five students. The focus of the program is entirely on the students and getting them thinking, so they are given deliberately vague descriptions of why they are placed together.
WELP is broken into three stages, with each roughly correlating to IDEO’s design thinking steps: ideation, iteration and implementation. Design thinking empowers students not to be judged on their ideas, creating a sense of openness that allows even late-in-the-game ideas to come forth as the strongest project goals. This is in comparison to some traditional classroom settings, where students stick with less-thought-out ideas simply because of the fear of “being wrong.”
Stage 1: Ideation
The objective of this stage is for students to come up with a core goal for their projects, and to figure out what they want to achieve. At the end of this phase, the groups should have a concise problem statement: a sentence or two describing the issues they want to solve. This generally starts by looking at problems they see in the real world and the capabilities of Wolfram technologies in addressing those.
Stage 2: Iteration
After project statements are approved, the teams move on to iteration—generating solutions to the problem identified in the previous phase. This phase motivates students to use divergent thinking skills to come up with dozens of potential solutions, then to work their way down to a single solution that carries through to the end of the program.
In order to create a final project draft—or minimum viable product (MVP)—students are encouraged to do “quick and dirty” coding to create short-form, experimental solutions for several of their ideas.
Stage 3: Implementation
The MVPs go a long way toward addressing the problem, but by the end of this phase, the groups have fully realized projects. By this point they are more sure of their ability to execute on their solutions than they had been in the ideation stage.
2019 WELP Projects
By the end of the 2019 program, four out of five groups had produced high-quality computational essays. The fifth group had created a series of science communication videos in which they explored a variety of topics in a livecoding format.
One group identified gerrymandering, the deliberate redistricting of voting zones to advantage one political party over another, as an issue they wanted to explore. By generating hundreds of randomly districted graphs, this group used several established methods of detecting gerrymandering to attempt to find a baseline for what maps could reasonably be achieved by randomness, and what should be looked at more closely as an attempt to gerrymander.
Another group decided that they wanted to learn new data science skills, working their way through the data science pipeline of gathering, cleaning, analyzing and predicting with data.
The students learned a lot from this project, not only about the theory behind data analysis and prediction but also about the challenges of applying theory to a real problem.
This group decided to study the spread of disease in a closed population. The traditional way of addressing this problem is setting up a series of coupled equations that model the number of susceptible, infected and recovered individuals in a population.
The group decided to use non-deterministic cellular automata to model their spread of disease. They also made the interesting leap of using parameters for distances, vaccination rates and other measures found in the real world.
This group wrote some very nifty code to produce visualizations of how topics progress through a text. Originally intended to track lectures or podcasts, the group successfully extrapolated into more generalized text documents. The program takes a text and outputs a series of visualizations showing how the topics progress.
With this fairly unique use of natural language processing, the students managed to create useful and interesting visualizations that allow the user to see the story play out.
Takeaways from WELP
I really enjoyed mentoring the 2019 WELP students as part of this program. Seeing them work hard to deliver a project was gratifying, and I was proud to help them further develop both personally and academically.
As demonstrated by the 2019 projects, students learn several important skills over the course of this program. First, their Wolfram Language coding skills and content knowledge improve dramatically, which is most noticeable from MVP to final project. Second, they gain further experience in working as part of a remote team—a skill that they will use with increasing regularity in the workplace and further education. In future years, when the Summer Camp will be held in person again, WELP may be their first experience working as part of a remote team. Third, their computational thinking skills grant insights for deeper thinking and problem solving.
Several of the WELP students from 2019 will be attending the Summer Camp in 2020 as teaching assistants, so it will be interesting to see these new skills in action. They will be helping to deliver casual learning opportunities specifically designed to improve the computational thinking skills of a new camp generation. Want to see more from WELP students and other Wolfram-sponsored student programs? Browse Wolfram Community’s group for student leadership programming, including projects from the Wolfram Student Ambassadors Program and more.