The Raspberry Pi Foundation, a name synonymous with fostering digital learning, has recently made strides in the realm of coding education. A few months ago, they introduced an online text-based Code Editor, designed to assist young learners aged seven and above in their coding journey. The latest development in this initiative is the decision to make the code for this Editor open source, inviting the global community to contribute and adapt it for various purposes.
The Code Editor is a user-friendly tool that simplifies the process of learning text-based coding. It is currently integrated into the first two projects of the ‘Intro to Python’ path, offering users a hands-on experience. The Editor’s features are designed to make coding more accessible:
- Running code directly in the browser eliminates the need for any setup, making it easy for beginners to get started.
- The automatic saving of code when logged into a Raspberry Pi Foundation account ensures that work is never lost. Even without logging in, the code changes are preserved for the session, allowing users to refresh or close the tab without fear of losing their progress.
- The Editor also provides the option to download the code to your computer for offline use.
The Code Editor supports Python as the first programming language due to its widespread popularity in schools, coding clubs, and the industry. However, the Foundation plans to extend support to web development languages like HTML/CSS soon.
The Raspberry Pi Foundation understands the challenges that come with learning new programming tools. Therefore, the Code Editor is designed with a simple and accessible user interface:
- Key functions are easily identifiable, including writing and running code, saving or downloading your code, and checking your code.
- Users can switch between dark and light mode according to their preference.
- The text size in input and output can be enlarged or reduced, catering to people with visual impairments and those who need to demonstrate something to a group of learners.
The Foundation is also exploring ways to enhance the Editor’s user interface for better mobile support.
Open-Source Code Editor
The Code Editor’s journey to becoming open source aligns with the Foundation’s vision of empowering every young person with the knowledge, skills, and confidence to effectively use and critically evaluate digital technologies. By making the Editor an open-source project, the Foundation invites other organizations and projects focused on coding and digital technology education to benefit from their work.
Low bandwidth connections
The Code Editor application is designed to work well on constrained devices and low-bandwidth connections, keeping in mind the diverse range of learners it aims to serve. The front end of the Editor operates in a standalone capacity, with Python executed through Skulpt, an entirely in-browser implementation of Python. Code changes are persisted in local storage by default, with the option for learners to save their work using a Raspberry Pi Foundation account.
The Editor’s user interface front end is built in React and deployed using Cloudflare Pages. The API back end is built in Ruby on Rails. The text-editor panel uses CodeMirror, which supports mobile devices and screen-readers, and includes features like syntax highlighting, keyboard shortcuts, and autocompletion. Python functionality is enabled using Skulpt for in-browser execution of code, with custom extensions built to support the learning content.
Contributing to the open-source code
The Raspberry Pi Foundation welcomes contributions to the development of the Editor. You can provide feedback on the code, report bugs, or submit contributions by raising a pull request against the relevant repository. The Foundation also appreciates feedback on the Editor’s usage through the feedback form.
The Code Editor’s development and publication as an open-source project have been funded by Endless, and the Foundation is open to partnerships to fund this key work. If you are part of an organization that would like to make use of the Code Editor, the Foundation encourages you to reach out to them.
The Raspberry Pi Foundation’s open-source Code Editor is a significant step towards making coding education more accessible and interactive. By inviting the global community to contribute, the Foundation is fostering a collaborative environment that will undoubtedly lead to the creation of a more robust and versatile learning tool. for more information jump over to the official Raspberry Pi Foundation blog.