By Meredith Alexander Kunz, Adobe Research
When summer interns come to Adobe Research, they work to complete a complex research project. At times, in their efforts to move quickly, they might not focus on one vital element: code quality.
What happens if your code quality is lacking? Your results could be way off. “You might abandon a whole research direction—it could be a bug, not a bad idea,” says Adobe Research’s Geoffrey Oxholm. Or you might think that things are going great until others take a closer look. “You could have brilliant-looking results in your internship, but if code quality is a problem, the next researcher who wants to pick it up—or a product team who wants to use it—may not be able to replicate the results,” explains researcher Eric Stollnitz.
Fortunately, Adobe Research created a special event with an “all-star” roster of engineers and special guests to address the issue: The Intern Code Quality Workshop.
A team of Adobe Research engineers, software developers, and scientists headed by Marcos Slomp, senior research engineer, organized the two-afternoon workshop this June. The event spanned offices in San Jose, San Francisco, and Seattle, with other offices joining remotely. Qingnan (James) Zhou, Krishna Mullia, and Darshan Prasad served on the organizing committee.
Code Propels Careers
In its second year, the event attracted 101 participants who learned skills to bolster their internships and to propel their careers.
“The quality of your code really matters—for your future, your career, and for how other people think of you,” says Stollnitz. “By having good quality code, you can make sound research decisions.”
The organizers designed the event to bring interns, mentors, and the Adobe engineering community together in a cooperative way.
“Sometimes writing code seems like a very lonely practice,” says Slomp. “But in reality, it’s more collaborative than you might think. You can ask someone for a second opinion, to make sure you keep the quality high.”
Machine Learning Skills
One of the main focuses of this event was on proficient machine-learning research and engineering. Three prolific researchers shared tips on model-training, code structuring, and dataset curation. Interns stayed engaged, taking pictures, jotting notes, and asking questions.
“It was a great example of how a short but concentrated session on a relevant topic gave benefits that far outweighed the time invested. Learning from experts who have spent years honing their craft has a lasting and unique impact,” explains Oxholm.
These topics have universal utility for researchers and engineers. “We introduced tools that interns can carry over to anyplace they go, in academia or industry,” Slomp says. Adds Zhou: “It’s a good way to prepare them for their future.”
The event also included product team staff, who shared what Adobe considers quality code. A panel of former interns who are now full-time staff talked about their experiences, too.
And icebreaker activities—such as collaborative games and getting-to-know-you exercises—brought out the fun, social side of participants. “Even super shy people enjoyed it,” says Slomp.
Interns walked away from the workshop with much more than a workshop t-shirt and a few coding tips.
“The Adobe Code Quality Workshop was a great opportunity to learn from many research and engineering experts,” says intern Matt Overby. He gathered information on a range of subjects important to junior researchers and engineers. “While I enjoyed the hands-on introduction to new tools and strategies, I also found the general advice to be useful, such as the words of encouragement from past interns, and how to get more out of conference attendance.”
And as Zhou points out, “An Adobe Research internship is more than just another line on your resume. It has a lasting impact. By understanding code quality, you can do better research—and that could become a lifelong habit.”
Photos by Claire (Qin) Li and Adobe staff