JupyterCon 2023

Denisa Checiu

Hello, I am Robotics Software Developer at QuantStack. I'm also currently in my third year, pursuing a bachelor’s degree in Robotics and Intelligent Systems with a minor in Computer Science, in Germany. My interests also include Machine Learning, AI and Computer Vision.

The speaker's profile picture


Visual Programming in JupyterLab with Blockly
Denisa Checiu, Carlos Herrero

Block-based programming offers the unique opportunity of teaching basic yet fundamental programming concepts without the challenge brought on by the specific syntax of text-based programming languages. Wishing to provide a smooth ramp of complexity for learners, we designed a JupyterLab extension for Blockly, such that Jupyter can now be used all throughout a student's learning journey, without the hassle of having to switch to a completely new environment at any point along the way.

In this talk, we will provide a more detailed look at the JupyterLab-Blockly extension, starting from the benefits of using it and our motivation when creating it, going through a well-documented journey of the UI, all towards a live demonstration with the kind of algorithms you can build using our standard blocks.

A relevant aspect of the extension is also its buildability. As such, we will also dive deeper into how JupyterLab-Blockly can be used as a base for other extensions, providing the perfect tools for simple robotics applications. We will go through each step a coder needs to take in order to make their own extension and the possibilities we offer in creating your own blocks, toolboxes and even programming language generators.

Finally, we will offer a glimpse into our very own cool robotics applications which were built on top of the JupyterLab-Blockly extension:
- jupyterlab-niryo, a plugin to control the Niryo One robot,
- jupyterlab-lego-boost, a plugin to communicate with the LEGO® Boost robot.

As a preview, you can read more in our blogpost: https://blog.jupyter.org/visual-programming-in-jupyterlab-with-blockly-7731ec3e113c

Jupyter in Education
Louis Armand 1