20 March 2025

Raspberry Pi: An open-source approach to localization

Raspberry Pi: An open-source approach to localization

In 2024, Cambridge-based localization provider Alpha CRC partnered with computing company Raspberry Pi. As part of their mission, Raspberry Pi strives to improve access to high-performance, low-cost computing platforms for enthusiasts and engineers globally. In order to take a step towards making this mission a reality, Raspberry Pi brought Alpha CRC on board to help them translate, localize, and QA the Official Raspberry Pi Beginner’s Guide book.

Alpha CRC’s Marketing Manager, Jack Simpson, caught up with Brian Jepson, Publishing Director from Raspberry Pi to find out more about this unique project.

Jack Simpson: So, everybody’s heard of Raspberry Pi or, at the very least, seen your cute logo, but tell us a bit more about the business, and what your thoughts on localization were for the brand.

Brian Jepson: Sure. Raspberry Pi makes low-cost, high-performance computers for home, education, and industry. Our flagship Raspberry Pi computers come as an all-in-one kit that includes the computer, a keyboard, a mouse, and SD card storage. We also include our Official Raspberry Pi Beginner’s Guide in the kit. To make sure we’re supporting as many people as possible, we publish that book in seven languages: English, French, German, Spanish, Italian, Brazilian Portuguese, and Japanese.

Jack: It’s clear that localization is a big thing for you then. What role would you say that it plays in supporting inclusivity and engagement within the Raspberry Pi community itself?

Brian: Raspberry Pi has an active community of users around the world, as you can see by taking a look at the official Raspberry Pi forums in a variety of non-English languages.

Our global community consists of educators, enthusiasts, and professional engineers, and these are the people who use our products, help one another, and act as evangelists for what we make. No one knows their way around our Raspberry Pi computers better than them.

By making these books available in several languages, we’re supporting those users and making it easier for them to get up and running with our computers.

Jack: What’s interesting here is that your community has also been helping with your localization efforts.

Brian: Definitely. We’ve been involving the community for a long time across a variety of editions, and we’ve learned that this was definitely the right decision.

As users of the product as well as native language speakers, the community members who helped us not only know their way around Raspberry Pi computers, but they know how others speak about them.

And we also learned lots of little things along the way; for every language we translated into, we learned about corrections that were needed in the English-language version!

Jack: So let’s get into the nitty-gritty of some of the challenges that you came up against localizing an open-source platform like Raspberry Pi. What were some of the challenges you faced when localizing an open-source platform?

Brian: The Raspberry Pi Operating System is based on Debian Linux, which itself is made up of a variety of software packages produced by different maintainers. Although Linux has come a long way since its beginnings in terms of user interface consistency, we still find that some software packages do things differently, so we couldn’t take a one-size-fits-all approach to translating certain common menu items or other user interface elements. However, because the software is all open source, and because developers take a modular, data-driven approach to localization, we had a solution: each time we generate a book PDF from our source files, we replace English-language terms with the localized versions by downloading and consulting the very same localization files that these software projects use for user interface localization.

Jack: Can you tell us about any specific examples?

Brian: Sure, so for the Scratch programming language examples in the beginner’s guidebook, we use the JavaScript library behind ScratchBlocks to turn the below example into an image of a Scratch program. This meant we didn’t need to create screenshots manually.

By using Scratch’s own localization code, we were able to translate these when we generated our documents, and render the images in the desired language:

when green flag clicked

set [loops v] to (0)

repeat until <(loops) = (10)>

say (loops) for (2) seconds

if <( loops) > (5)> then

say [That’s High!] for (2) seconds

end

change [loops v] by (1)

This would not have been possible if we weren’t using a standards-based toolchain (powered by HTML, CSS, and JavaScript) for converting source files into print-ready PDFs.

Jack: And how did Alpha CRC come into the equation?

Brian: We worked with the Alpha CRC team to build a workflow that involved multiple passes over the files; after the first translation pass, I’d generate a PDF with the automated bits of localization incorporated: this included user interface terms, and Scratch images, as well as localized screenshots we took manually. Alpha CRC would then proof the localization, and we’d send it out to the community reviewers. My team and I would then take the reviewer feedback, apply it to the document, and send it back to Alpha CRC for a final review.

Jack: And finally, in the spirit of being open-source, what advice would you give to other organizations looking to localize open-source platforms?

Brian: Community and data are your friends. Involve your users and your biggest supporters as much as you can. Poke around the software packages, especially the ones you didn’t create in-house, and see if the software itself contains localization tables that you can easily integrate into your translation workflow.

The team at Alpha CRC want to extend a big thank you to Raspberry Pi for the chance to be involved in this unique project, which gave us the opportunity to work with so many subject-matter experts in the process of honing a text to perfection for each target locale. And, also, a big thanks to Brian Jepson for sitting down and talk with us. We look forward to our continued work together.