Presented by:

Dan Garcia

from UC Berkeley

Dan Garcia is a Teaching Professor in the EECS department at UC Berkeley. He was selected as an ACM Distinguished Educator in 2012 and ACM Distinguished Speaker in 2019, and is a national leader in the "CSforALL" movement, bringing engaging computer science to students normally underrepresented in the field.

Thanks to four National Science Foundation grants, the "Beauty and Joy of Computing (BJC)" non-majors course he co-developed has been shared with over 800 high school teachers. He is delighted to regularly have more than 50% female enrollment in BJC, with a high mark of 65% in the Spring of 2018, shattering the campus record for an intro computing course, and is among the highest in the nation! He is humbled by the international exposure he and the course have received in the New York Times, PBS, NPR, and others media outlets. He is working on the BJC Middle School curriculum.

Mary Fries

from Beauty and Joy of Computing, Education Development Center, Inc.
No materials for the event yet, sorry!

Snap! is available in 47 languages, and has a truly international community of users. The architecture that has made that possible, and the efforts of the folks who have helped with those translations, are deeply appreciated.

However, having worked for the last two years to translate the Beauty and Joy of Computing (BJC) AP CS Principles curriculum to Spanish, we have discovered that what might seem like a simple task of moving a curriculum to another language, revealed a remarkable list of inter-dependencies on English and difficulties in managing that large project. So many tasks were labor-intensive, and scripting didn't help. Among the challenges:

  • There was no automated way to translate all the hundreds of PNG images of blocks. “Smart PNGs” (with the XML embedded in the metadata) is amazing and now allows for automation, but the images were created before that feature existed. Animated gifs showing how to do something had to be recreated by hand.
  • Not all the blocks (or error messages, or menu items, or dialog boxes) in Snap! have been translated to all 47 languages, since once a translation is created, and new features are added, all translation teams need to be informed about the additions. Perhaps a team needs to realize it's not a one-and-done process and check back in every 6 months?
  • Snap! help text currently only exists in English
  • A curriculum translation often takes a fair amount of time, and sometimes the curriculum or Snap! changes before it's done, so managing those different versions can be difficult.

Could automation and large language models help? Should there be a “translation regression test” feature? It would go through all the blocks, libraries, menus, dialogs, help screens, etc. and create a PDF with three columns: the English on the left, the translation on the right, and the place in the translation file to make the change.

These are just some ideas we'd like to explore in this BoF. If you have been involved in any translations of Snap! (or curriculum built on it), please share best (and worst) practices. If you have ideas to leverage automation or tooling to help with future translations, please attend and share your thoughts!

Duration:
1 h
Room:
Online Room 1
Conference:
Snap!shot 2024
Type:
Birds of a Feather