Welcome to BlockPy!
BlockPy is a web-based Python environment that lets you work with blocks, text, or both. Designed for Data Science and equipped with powerful tools like the State Explorer and Guided Feedback, BlockPy lets students solve interesting and authentic problems.
Interested in making BlockPy problems for your class?
More About BlockPy
The goal of BlockPy is to give you a gentle introduction to Python but eventually mature you into a more serious programming environment (such as Spyder or PyCharm). Long-term, we may support some game/animation design stuff that Scratch/Snap does, but that's not the real goal.
The BlockPy project is aimed at solving some hard technical problems: having a block-based environment for a dynamic language can be tricky - are a given pair of square brackets representing list indexing or dictionary indexing? Our goal is to use advanced program analysis techniques to provide excellent support to learners.
BlockPy owes much of its power to Google's Blockly project, the Skulpt project, Codemirror, and a host of other libraries. For a complete list, see the project GitHub.
Publications related to BlockPy:
- A. C. Bart, J. Tibau, D. Kafura, E. Tilevich, C. A. Shaffer, Design and Evaluation of a Block-based Environment with a Data Science Context, IEEE Transactions on Emerging Topics in Computing '17. May, 2017.
- A. C. Bart, J. Tibau, E. Tilevich, C. A. Shaffer, D. Kafura, Design and Evaluation of Open-access, Data Science Programming Environment for Learners, IEEE Computer '17. May, 2017.
- A. C. Bart, J. Tibau, E. Tilevich, C. A. Shaffer, D. Kafura, Implementing an Open-access, Data Science Programming Environment for Learners, COMPSAC '16, Atlanta, Georgia. June 10-15, 2016.
- A. C. Bart, E. Tilevich, C. A. Shaffer, D. Kafura, Position Paper: From Interest to Usefulness with BlockPy, a Block-based, Educational Environment, Blocks & Beyond '15, Atlanta, Georgia. October 21-23, 2015.
The People Behind BlockPy
|Austin Cory Bart
|Clifford A. Shaffer
A major design goal for BlockPy is accessibility, although none of its developers are experts. If you have ideas for how to help us be more accessible, please raise an issue on our GitHub!
If you would like to learn about BlockPy's accessibility information, you can download our VPAT Report.
Want the code? Have an issue? Check out our GitHub repos! Everything is open-source :)
Need to talk to a person? You can contact the lead developer at:
- Austin Cory Bart (firstname.lastname@example.org)