From Tufts to Teaching Code
By Gabrielle Otto
PhD candidate in Mathematics Joanne Lin’s passion for research was solidified after she completed a summer research program at UCLA while she was an undergraduate at Pepperdine University in California. This hands-on research experience gave her excellent insight into what a career in mathematics research would entail and motivated her to apply to PhD programs in mathematics. Fast forward to this summer, where Lin will be switching roles from summer student to teacher and will design a summer program of her own on coding and app development.
Exploring and Expanding at Tufts
When she first came to Tufts in fall 2014, Lin wasn’t exactly sure what the focus of her research and studies would be. She had graduated from Pepperdine the spring before, finishing her BS in Mathematics in only three years, and had chosen Tufts for its location amidst the exciting academic hub that is Boston. Lin delved into the many opportunities that Tufts presented: she spoke at length with faculty and fellow students about their work and research, joined math student organizations, and took advantage of what she describes as the “very supportive” environment of the Mathematics department.
She even began playing keyboard in a band made up of other Tufts graduate students, something she had always wanted to do, and joined WuZee, Tufts’ Chinese fusion dance group. These creative outlets, she says, helped her stay balanced over the course of her graduate studies.
She soon chose Assistant Professor Xiaozhe Hu as her doctoral advisor. “It was a good match,” Lin says. “We were both in our first year at Tufts, both trying to explore, and discover everything that the university had to offer.” Hu also introduced Lin to an emerging area of applied math research, graph theory, which would become the focus of her research at Tufts and the topic of her dissertation.
Lin’s research in graph theory focuses on designing scalable algorithmic solutions for complex networks. One application of her research is to cluster disease modules in protein direction networks within the human body. The algorithm groups proteins of similar functions to assist medical researchers trying to find cures or develop pharmaceuticals to treat various diseases. Eventually, Lin says, the algorithm could be applied to research on many other complicated networks including social, food, and energy networks.
A Winning Introduction to Coding
In 2016, Lin and Professor Hu had the opportunity to partner with Tufts Professor of Computer Science Lenore Cowen and her graduate students on the Disease Module Identification DREAM Challenge, a worldwide data science challenge sponsored by IBM and Columbia University. This experience introduced Lin to new aspects of data science, including data mining, and presented her with the opportunity to work more closely with colleagues across the university. The team won first place in the competition and the collaboration continues to be a part of Lin’s ongoing research and dissertation work.
Following the competition win, Lin decided to enroll in the Graduate Certificate in Computer Science offered in the School of Engineering. That program exposed her to a variety of new coding languages and concepts which, in addition to benefiting her own applied math research, fascinated her on a personal level. She was inspired to put together a proposal for a new course, a bootcamp on the basics of coding in four key programming languages, to be offered during Tufts’ Summer Session.
Classroom Theory to Real World Practice
While honing her coding skills and digging more into her fascination with data science, Lin had become enamored with another aspect of academia: teaching and curriculum design. She had taught her first course, Calculus I, in the fall semester of 2016. “I enjoyed it a lot. Working with students and guiding them to those ‘aha!’ moments was so gratifying,” Lin says.
After her proposal for a summer coding bootcamp was accepted with excitement by both the math department and the summer session course developers, Lin discovered that her students would be coming from a range of backgrounds and experience levels. The enrollees included Tufts undergraduates, international students on campus for the summer, high school students, and Tufts staff and faculty.
“I asked the students on the first day of class what they wanted to get out of the course and many of them said they were interested in coding as a career,” Lin says. She found however that many of these students didn’t know exactly what a career in coding might involve.
“They thought that coders sit behind a desk all day working independently. They didn’t realize that a job in coding means not only knowing how to build good code, but also involves a great deal of communicating about what you’re doing and knowing how to work effectively in a team environment.” So, to facilitate the real-world environment in a classroom setting, for the course’s final project she paired the students in groups of two and set them to work building and designing a programming project of their choice.
“This is the part that makes this course fun. Not only are they learning the basics of coding, but they are also learning them in a realistic environment. If they want to pursue this as a career, as a Data Analyst for example, what is the job really like?”
Lin included other practical aspects of coding in her course as well such as “datathons,” challenges where students must build a program to solve a problem in a set amount of time.
Since then, Lin has also taught a coding course through the Experimental College at Tufts called “Matlab for Everyone” geared towards students in non-STEM majors. This was another opportunity for Lin to learn to build effective curriculum while working with different types of students, a challenge she enjoys.
“This is a field that is in high demand,” she says. “Employers are looking for talent who can make sense of data, not only from math and computer science backgrounds, but the psychology, history and social sciences fields all work with data a lot and need the tools to efficiently clean, file, and analyze data.”
A Productive Summer
This coming summer Lin will be teaching a three-week intensive course on programming and app design in the Summer Pre-College program at Tufts for another new audience: high school students. She has been working with the staff of the Tufts Data Lab in Tisch Library to develop a comprehensive program that will cover coding in the languages Python and R as well as teach skills like data scraping and natural language processing. Students will also get the chance to develop and then pitch and market their own app.
Lin will also be finishing up her dissertation and graduating from Tufts this summer. She has received a job offer for a tenure track faculty position and is currently deciding what her next steps will be after Tufts. With many universities looking to build up their programming and courses in coding and data science, Lin says she believes that her experience teaching and developing curriculum in these subjects has given her a competitive leg up in the job market.
“I’m always interested in teaching something that’s practical and that answers students’ questions about what’s going on in the field right now. And right now, data science is what’s going on!”