Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Working on a new iteration of the micro:bit Python Editor #391

Open
microbit-carlos opened this issue Jul 22, 2021 · 2 comments
Open

Working on a new iteration of the micro:bit Python Editor #391

microbit-carlos opened this issue Jul 22, 2021 · 2 comments

Comments

@microbit-carlos
Copy link
Collaborator

microbit-carlos commented Jul 22, 2021

We’ve been working on a new iteration of the Python editor for the micro:bit. 🐍🎉✏️

We thought it made sense to raise an issue here to signpost it for all the contributors and users of this repo.

Goals of the new iteration

We started out looking at how we could iterate on the design of the micro:bit Python editor to help make Python as a language more approachable for a diverse audience, especially those who may not already be confident with code. We want to support people whether they are new to computing, or coming from block-based languages.

The goal was to keep things as a text-first editor, that is friendly, approachable and helps you explore the features of the micro:bit and (Micro)Python to create and understand your code.

To do this, we think it is important to make some significant UX changes.

New architecture and source location

As part of the UX overhaul, we are also taking the opportunity to revisit the technical foundations of the micro:bit Python Editor. Some of the requirements that existed at the time this editor was built aren’t as relevant today, and the web stack has moved a lot since 2015!

For example, we’re moving away from jQuery to a TypeScript/React stack, and aiming to build the editor out of components that are also re-usable by other micro:bit Python editors (a direction that’s worked well with microbit-fs, and microbit-universal-hex).

As this project has a significantly different structure, we’ve started a new GitHub repository at https://github.com/microbit-foundation/python-editor-next.

There’s a deployment up at https://python.microbit.org/v/alpha

Status of the new editor

This is very early stages! We definitely don’t think it’s ready for day-to-day use, and lots of the things we want to add to the editor aren’t there yet….

The initial goal of this alpha release is to reach feature parity with the current editor, learning from all the things people love; the simplicity, the focus on the code as the main element, and access to the MicroPython REPL from a WebUSB capable browser.

Part of developing in the open and being responsive to feedback from our audience means our editor roadmap has to be flexible. However, we are currently expecting to include work on:

  • adding supporting documentation and educational content to the sidebar to help people explore micro:bit features in the context of MicroPython
  • detecting and highlighting syntax errors
  • effective autocomplete for the micro:bit API
  • and longer term... how best to bring in some of the research done on simulation into the editor
  • making this a best-in-class, text-first Python Editor for everyone


Come and help 🙂

We hope the use of a more modern set of tools will make collaborating on the editor with a wide community of micro:bit enthusiasts easier. If you’re interested in working on the editor join us over at the new repository.

We are sharing this news early in the development process, to get your feedback and let you know how to get involved.

What's happening to python.microbit.org and this codebase?

Nothing will change on https://python.microbit.org in the near term. This announcement is to help gather feedback on the newer editor.

Our main development effort will switch to the new editor codebase, where we plan to add more features and run a wider beta testing program with an educational audience before making the new editor the default.

When the new editor is made live, the current version will still remain available at https://python.microbit.org/v/2, built from this repository.

@microbit-carlos microbit-carlos pinned this issue Jul 22, 2021
@microbit-matt-hillsdon
Copy link
Collaborator

We've released a beta version of the new V3 Python Editor 🎉

Please try it out at https://python.microbit.org/v/beta

We'd love to hear your feedback. There's a feedback form in the app, click "Feedback" in the bottom left, or raise an issue in the new GitHub repository.

image

As before, the V2 editor remains available at https://python.microbit.org/v/2 and is still the default for users visiting https://python.microbit.org

@microbit-matt-hillsdon
Copy link
Collaborator

The V3 Python Editor launched this week 🎉

It's now the default editor when you visit https://python.microbit.org

The big change since the last update here is that the editor now has a simulator, so you can quickly try micro:bit programs without having to flash the micro:bit device.

python.editor.simulator.social.video.mp4

You can still access the V2 micro:bit Python Editor at https://python.microbit.org/v/2. It will be continue to be available at least until September 2023.

The micro:bit Python Editor V3 and the simulator are both in separate GitHub repositories: V3 editor; simulator.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants