Blocks programming, in which program syntax trees are represented as visual blocks, is popular in programming environments targeted at beginner programmers and casual programmers. The goal of this workshop is to bring together language designers, educators, and researchers to (1) discuss the state of the art of these environments, (2) assess the usability and effectiveness of these environments and their associated pedagogies, and (3) brainstorm about future directions. This workshop will not be a mini-conference. The focus will instead be on engaging participants in discussions. There will be three kinds of sessions:
- Discussion sessions organized around a keynote and some short talks/panels.
- Demo/poster sessions in which participants describe recent work related to blocks languages or other introductory programming environments.
- A “campfire talk” in which developers of blocks environments share stories about their current systems and future plans, with feedback from all workshop participants.
Anyone who wants to join the discussions is welcome to participate in the workshop.
Accepted Papers
Call for Participation
Blocks programming, in which program syntax trees are represented as visual blocks, has become popular in programming environments targeted at beginner programmers as well as casual programmers (artists, scientists, hobbyists, etc.). Tens of millions of people have used blocks programming environments like Scratch, App Inventor, Blockly, Snap!, StarLogo Nova, Pencil Code, Alice/Looking Glass, AgentSheets/AgentCubes, and Code.org’s curricula.
The goal of this workshop is to bring together language designers, educators, and researchers to (1) discuss the state of the art of these environments, (2) assess the usability and effectiveness of these environments and their associated pedagogies, and (3) brainstorm about future directions for these environments. We seek participants with diverse expertise, including, but not limited to: design of programming environments, instruction with these environments, human factors, the learning sciences, and learning analytics.
This workshop will not be a mini-conference. The focus will be on engaging participants to discuss the current state and future directions of blocks languages and other programming environments targeted at beginners and casual programmers.
Call for Proposals
Anyone who wants to join the discussions is welcome to participate in the workshop. But we encourage more active participation in the form of (1) giving shorts talks that spark discussion; (2) participating in panel discussions of a relevant topic; and (3) presenting demos and/or posters. These forms of participation require proposal submissions by the submission deadline (Friday 17th of August, 2018) that will be reviewed by the program committee:
-
Talk proposals (max 2 pages) should describe a position, open problem, exciting feature/system, promising line of work, or impactful research result. Talks will be chosen based on relevance, clarity, and their likelihood for generating good discussions. Talk proposals not chosen for presentation will automatically be considered for demos/posters.
-
Panel proposals (max 2 pages) should involve at least three people who wish to present perspectives on a topic related to blocks languages. Panels will be chosen based on relevance, clarity, and their likelihood for generating good discussions.
-
Demo/poster proposals (max 2 pages) should describe a system, design, pedagogy, analysis, experiment, result, etc. involving recent work related to blocks languages or other introductory programming environments.
There will be an opportunity to revise accepted proposals to address feedback from the PC.
Publication
All revised accepted proposals will be linked from the BLOCKS+ web page on the SPLASH website. There will be no other form of publication.
Presenters will also have the option to link slides, posters, and other materials relevant to their presentations from the BLOCKS+ web page.
Topics
Suggested topics include (but are not limited to):
-
How usable and effective are blocks environments for teaching programming? For democratizing programming and enabling computational makers? How do we know?
-
In what ways have blocks languages succeeded or failed at fulfilling the promise of visual languages to enhance the ability of humans to express computation?
-
What tools are there for creating new blocks languages, especially domain-specific ones? What tools allow users to extend existing blocks languages?
-
How does the two-dimensional nature of blocks programming workspaces affect the way people create, modify, navigate, and search through their code?
-
How can blocks languages better support dynamic semantics and pragmatics, particularly with features for liveness, debugging, and understanding the dynamic execution of programs?
-
What are effective mechanisms for multiple people to collaborate on a single blocks program when they (1) are co-located or (2) are working together remotely?
-
What are effective pedagogical strategies to use with blocks languages, both in traditional classroom settings and in informal and open-ended learning environments?
-
What are the most effective ways to provide help to blocks programmers, especially in settings outside the classroom?
-
How can online communities associated with these environments be leveraged to support users?
-
How can blocks environments and associated curricular materials be made more accessible to everyone, especially those with visual and motor impairments?
-
In what ways do blocks environments help or hinder those who use them as a stepping stone to traditional text-based languages? What are good ways to support the transition between blocks languages and text-based languages? How important is this?
-
What lessons from the blocks programming community are worth sharing with other language designers? Are there features of blocks languages that should be incorporated into IDEs for traditional programming environments? What features of modern IDEs are lacking in blocks languages?
-
For these environments, what data can be collected, and how can that data be analyzed to determine answers to questions like those above? How can we use such data to answer larger scale questions about early experiences with programming?
Submission Instructions
Even though BLOCKS+ proceedings will not be published by the ACM, for consistency with other SPLASH workshops, BLOCKS+ proposal submissions should use the double-column SIGPLAN acmart
style: http://www.sigplan.org/Resources/Author/. The provided double-column template is available for Latex and Word. Some notes:
- proposal authors should not be anonymous
- Do include an abstract
- You do not need to include CCS concepts. But do include appopriate keywords.
- For the main content of your proposal, use whatever sectioning makes sense.
- References/citations/acknowledgments are only necessary if they make sense in the context of your proposal.
- change the \acmConference definition to \acmConference[BLOCKS+]{ACM SPLASH BLOCKS+ 2018 Workshop}{November 04, 2018}{Boston, MA, USA}
- proposals should be no more than 2 pages.
A PDF of the proposal should be submitted to the BLOCKS+ hotcrp site: https://blocksplus18.hotcrp.com/.
The submission deadline is the end of day on Fri. Aug. 17, Anywhere on Earth time (= 8am EDT on Sat. Aug. 18). But this is not a hard deadline. If you are interested in submitting a proposal, but will have trouble making the deadline (or have missed the deadline), please email the BLOCKS+ chairs.
Sun 4 NovDisplayed time zone: Guadalajara, Mexico City, Monterrey change
08:20 - 08:30 | |||
08:30 - 09:00 | |||
08:30 30mTalk | Mental Models, Metaphors and Misconceptions BLOCKS+ |
10:30 - 11:00 | |||
10:30 30mTalk | Panel: Block Abstractions for Artificial Intelligence BLOCKS+ A: Evan W Patton Massachusetts Institute of Technology, A: Stefania Druga Massachusetts Institute of Technology, A: Jessica Van Brummelen Massachusetts Institute of Technology, P: Joe Mazzone Teacher at Davies Career and Technical High School, P: Xavier Puig Fernandez MIT-CSAIL Pre-print |
11:00 - 12:00 | |||
11:00 10mTalk | Broadening Participation in Computer Science through Block Programming BLOCKS+ Beryl Hoffman Elms College, Ralph Morelli Trinity College, Jennifer Rosato College of St. Scholastica Pre-print | ||
11:10 10mTalk | Reducing the Barriers for Computational Action: How Blocks-Based Programming Can Support Digital Empowerment BLOCKS+ Mike Tissenbaum University of Illinois, Urbana-Champain, Josh Sheldon MIT App Inventor, Hal Abelson MIT Pre-print | ||
11:20 8mOther | Themed Session 2: Whole-group discussions BLOCKS+ | ||
11:28 3mTalk | Educational Robotics with a Twist BLOCKS+ Pre-print | ||
11:31 3mTalk | A Blocks-Based Approach to Internet of Things in MIT App Inventor BLOCKS+ Pre-print | ||
11:34 3mTalk | DevTech Lab - KIBO and ScratchJr Demo BLOCKS+ Catherine Cowell Tufts University, Hannah Riehl Tufts University, Marina Umaschi Bers Tufts University Pre-print | ||
11:37 3mTalk | CloudDB in MIT App Inventor BLOCKS+ | ||
11:40 20mOther | Themed Session 2: Breakout discussions and demos/posters BLOCKS+ |
13:10 - 14:10 | |||
13:10 60mTalk | Thinking Outside the Blocks BLOCKS+ R. Benjamin Shapiro University of Colorado, Boulder |
14:10 - 15:00 | |||
14:10 10mTalk | Building an Accessible Block Environment BLOCKS+ Emmanuel Schanzer Brown University, Sina Bahram Prime Access Consulting, Shriram Krishnamurthi Brown University, USA Pre-print | ||
14:20 5mTalk | Language Workbench Support for Block-Based DSLs BLOCKS+ Mauricio Verano Merino Technische Universiteit Eindhoven, Tijs van der Storm CWI & University of Groningen Pre-print | ||
14:25 5mTalk | Rapid Prototyping for Blocks-based Languages and Environments BLOCKS+ Pre-print | ||
14:30 5mTalk | TypeScript: From JavaScript to Blockly and Back BLOCKS+ Thomas Ball Microsoft Research, Peli de Halleux Microsoft Research, Sam El-Husseini Microsoft, Richard Knoll Microsoft, Michał Moskal Microsoft Research Pre-print | ||
14:35 25mOther | Themed Session 3: Break-out discussions and demos/posters BLOCKS+ |
15:30 - 16:15 | |||
15:30 5mTalk | Enhancing and Evaluating Collaborative Blocks Programming in App Inventor BLOCKS+ Pre-print | ||
15:35 5mTalk | Real-time Collaboration and Undo in StarLogo Nova: Technical Approach and Considerations for UX Design BLOCKS+ Denis Li MIT Scheller Teacher Education Program, Lisa Stump MIT Scheller Teacher Education Program, Daniel Wendel MIT Scheller Teacher Education Program Pre-print | ||
15:40 5mTalk | Real-time Collaboration in NetsBlox BLOCKS+ Akos Ledeczi Vanderbilt University | ||
15:45 5mTalk | Multi-Device Grace BLOCKS+ Ben Selwyn-Smith , Craig Anslow Victoria University of Wellington, Michael Homer Victoria University of Wellington | ||
15:50 25mOther | Themed Session 4: Break-out discussions and demos/posters BLOCKS+ |
16:15 - 17:00 | |||
16:15 5mTalk | Rethinking OOP in Snap! BLOCKS+ Pre-print | ||
16:20 5mTalk | Custom Blocks in StarLogo Nova: A Template-Based Approach to Abstraction for Improved Ease of Use and Expressive Power BLOCKS+ Hyeonsu Kang MIT Scheller Teacher Education Program, David Wu MIT, Daniel Wendel MIT Scheller Teacher Education Program Pre-print | ||
16:25 5mTalk | Two New Block Features in GP BLOCKS+ | ||
16:30 5mTalk | JSON Interoperability in MIT App Inventor BLOCKS+ Evan W Patton Massachusetts Institute of Technology, Danny Tang Massachusetts Institute of Technology Pre-print | ||
16:35 5mTalk | Scratch 3.0 Design Notes BLOCKS+ | ||
16:40 20mOther | Implementers’ Campfire: Whole group discussions BLOCKS+ |
17:00 - 17:05 | |||
17:05 - 17:45 | |||
17:05 40mOther | Playground Demo/Poster Session BLOCKS+ |
Unscheduled Events
Not scheduled Talk | Accessibility and Block-based Languages: Challenges and Opportunities BLOCKS+ Stephanie Ludi University of North Texas Pre-print |