Professor Problem-Solver: Teaching Creative & Efficient Software Solutions
By Danna Lorch

Enjoying the process. In the classroom and the lab, mentorship is at the heart of John Stratton’s (left) teaching.
In his life and work, John Stratton has always liked being fast.
Fast at piecing together logic puzzles as a kid in small-town Virginia. Fast with the fry baskets in his first job at the local McDonald’s. And a builder of fast things—from rockets to computer software—in high school and college.
Today, the Associate Professor of Computer Science is also quick to share his excitement about his work mentoring the next generation of software developers at Whitman College.
With efficiency at the heart of everything he does, it’s no surprise Stratton gets things done. When he’s not teaching a class, he can be found collaborating on research with colleagues, directing the Whitman College Software Optimization Lab, advising pre-engineering students or helping lead the global software consultancy MulticoreWare.
Making the Software Switch
Although he was always STEM-focused, Stratton initially overlooked Computer Science as a possible major at the University of Illinois Urbana-Champaign because he didn’t understand what it was all about.
“I assumed that coding was just a different kind of typing,” he admits. He was more interested in the engineering of computers—building hardware and technology.
He didn’t give software another thought until a computer engineering course showed him that computers needed instructions to do anything. “It was eye-opening,” Stratton says. “I loved how computer science is about identifying a problem that needs to be solved and figuring out how to build a computer system or piece of software to solve it.”
Stratton went on to earn both his Bachelor of Science and doctorate at Urbana-Champaign. While his first love for the hardware side of computing never faded, over time, software became a more dynamic research field.
“My advisor and cohort were very focused on understanding existing systems and testing how to write and develop better software to enable the hardware that we had,” he explains. Consequently, Stratton expanded his research focus to include computer science in graduate school.
Exploring Ideas With Impact
Realizing early on that he wanted to focus his career on research and academics, Stratton was very intentional about the type of professor he wanted to become and the impact he wanted his work to make in the wider world.
“After graduating, I sought out a position which emphasized more mentorship in teaching than lecturing to giant halls filled with students,” he says.
That’s just what he found at Whitman in 2016. Under the leadership of Janet Davis, Professor and Microsoft Chair of Computer Science, who had arrived at the college the year before, the new Computer Science Department was coming to life. Stratton was inspired by the invitation to help senior colleagues launch a new program early in his career.
Today’s department is constantly growing and changing dramatically—just like the field it prepares students to enter. “It’s no secret that our department is excited about wanting to try new things,” Stratton says.
And in the Whitman College Software Optimization Lab, or OptiLab, Stratton and his students can do just that. Together they are exploring new ideas—like reducing the energy that software uses.
“I want to give [students] the space needed to take on big challenges without fear … I believe that growth happens best in a community.
”
John Stratton, Associate Professor of Computer Science
“If you can take libraries implementing machine learning or video compression, and you can make them 10% faster, that dramatically impacts global energy consumption,” he says. That’s a goal that would offer far-reaching positive impacts on the environment and people’s daily lives.
Stratton and teams of student researchers explore these applications by building simulators that help scientists run high-quality software to make their research more efficient.
“We work with software systems to learn how to implement efficient, accurate and robust software to solve problems—whether it’s gene regulation network simulations or circadian rhythm and heart tissue simulations,” Stratton says.
While most of his collaborations are with companies and labs beyond the college, he also partners with several Whitman colleagues. One of them is Arielle Cooley, Professor of Biology, who researches the pigmentation of the Chilean monkeyflower Mimulus luteus as a window into the mechanisms underlying evolutionary change. OptiLab helps Cooley process large imaging datasets in record time.
From the Classroom to the Boardroom
Stratton finds it meaningful to stay active in the corporate tech world too. As a doctoral candidate, he developed a compiler—a tool that translates programming languages into different formats—that could translate and run new programming languages on computers that didn’t have the hardware capabilities the languages were designed for. He shared his findings with MulticoreWare and has grown with the software solutions company ever since, now serving as its Chief Technology Officer.
His connections there have opened doors for Whitman graduates looking to begin their computer science careers. And Stratton’s practical experience at MulticoreWare heavily contributes to the course materials in his Software Performance Optimization syllabus. The problems he troubleshoots for the company help inspire the assignments he challenges Whitman students to complete.
“These are exactly the types of problems I want my students to be able to solve in class,” Stratton says. “At the end of the day, we all want to go out into the world and build tools that people want to use and can use productively.”
Performance vs. Growth: A Lesson in Balance
On the first day of John Stratton’s computer systems courses at Whitman, he likes to start with a powerful demonstration.
“I take a simple Python coding program that a Computer Science student could have written, and I show them in five minutes how to make that program 3,000 to 10,000 times faster,” Stratton says. It makes a strong statement about the potential for improved performance, but he’s the first to admit that going faster in the classroom isn’t his top priority for Whitman students.
In an open letter he hands out in the same session, Stratton invites students to reflect on the difference between growth and performance. In a performance environment, mistakes are penalized. But in a growth environment, the point is to experiment, take risks and even fail before mastering a theory or skill.
“I want to give you the space needed to take on big challenges without fear,” his letter explains. “I believe that growth happens best in a community.”
Stratton believes community works best when it is made up of individuals from different backgrounds with diverse ways of problem-solving. That perspective is rooted in his own early education. Homeschooled as a kid, he initially struggled with time management in college and thought grading systems were a distraction from learning.
“I didn’t just want to answer a question correctly and move on to something else—I wanted to understand the concepts behind the exams and their applications,” he says. Today he tries to pass on this approach to his students.