VLDB 2026 Research / reviewers in the wild / expert
Michael Ball 0001
dblp:175/6457 · also Michael A. Ball
· DBLP profile ↗
37ranked-venue papers
18as first author
23since 2021 · last 2026
0000-0002-7036-3902ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Human-computer interaction and ubiquitous computing · 36 · 18 first-author · 23 since 2021Artificial intelligence and machine learning · 1Systems, architecture and hardware · 1Applied, interdisciplinary, general and emerging computing · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | The Beauty and Joy Computing: CS Curricula That Scales from Middle School to University
Michael Ball 0001, Dan Garcia 0001, Mary Fries, Marnie Hill, Della Dastur, Lauren Mock |
SIGCSE (2) | 1 |
| 2026 | A Community of Snap! Educators - New Features and Tools for Teaching AIabstractSpring 2025 marks 12 years since Snap! was first used with students and the Snap! Cloud was developed for sharing projects. Since then, nearly 1 million students and educators have worked on almost 10 million Snap! projects. This BOF brings together the growing community of Snap! users, teachers, and core developers at SIGCSE. Michael Ball 0001, Jens Mönig, Dan Garcia 0001, Victoria Phelps, Yuan Garcia, Jadga Huegle |
SIGCSE (2) | 1 |
| 2026 | A Hands-on and Interactive Introduction to the Fundamentals of Artificial Intelligence using Snap!
Dan Garcia 0001, Jens Mönig, Jadga Hügle, Mary Fries, Jane M. Kang, Delnavaz Dastur, Victoria Phelps, Bryant Bettencourt, Michael Ball 0001, Lauren Mock |
SIGCSE (2) | 9 |
| 2026 | Teaching Faculty Careers without a PhD: A Mentoring CommunityabstractTo meet the need of teaching faculty in computing and information sciences, many institutions of higher education in North America have been actively seeking and successfully recruiting full-time teaching faculty without requiring PhD While these pathways are becoming more established, there remain significant challenges in preparing, recruiting, and supporting teaching faculty in ways that reflect their unique positions in academia. Adam Blank, Michael Ball 0001, Travis McGaha, Suraj Rampure, Yesenia Velasco, Kendra Walther |
SIGCSE (2) | 2 |
| 2025 | A New Class of Teaching-Track Faculty: No Ph.D. RequiredabstractDemand for teaching faculty in the computing and information sciences is very high. To address this demand, many institutions of higher education in North America have been actively seeking and successfully recruiting full-time teaching faculty without requiring PhD. However, there remain many significant challenges around preparing, recruiting, and supporting these teaching faculty that are unique to their position and experience in academia. This Birds of a Feather session welcomes faculty on both sides of the hiring table as well as post-secondary students interested in teaching careers to discuss and envision how our community can better support diverse-degree pathways to full-time teaching faculty careers. We anticipate supporting questions and conversations from people with experience at all levels: conversation topics may include how to navigate the job market, how roles vary between institutions (with regards to degree requirements, workload, job security, service responsibilities, and expectations of scholarship), and how to better prepare and support students interested in this career track. Michael Ball 0001, Suraj Rampure, Kevin Lin 0001 |
SIGCSE (2) | 1 |
| 2025 | Snap! 10 - From Blocks to AI: Empowering Learning with Custom Primitives and Machine Learning
Victoria Phelps, Michael Ball 0001, Dan Garcia 0001, Yuan Garcia |
SIGCSE (2) | 2 |
| 2024 | Snap! 9- Support for Teachers and Programming with DataabstractThis year's Snap! 9 release represents 10 years since Snap! 4.0 was initially released as a web application. Version 9 includes hundreds of new features, focused on providing students and teachers with new cloud tools, continued development of tools for working with data, and ''quality of life'' enhancements. Michael Ball 0001, Dan Garcia 0001, Victoria Phelps, Yuan Garcia |
SIGCSE (2) | 1 |
| 2024 | Student Mission Control: Integrating Space Data Exploration into Data and Computer Science EducationabstractData Science (DS) blends computer science, statistics, mathematics, and visualization. The absence of a nationwide DS curriculum in the US prompts educators to independently devise engaging DS curriculum. With support from the National Science Foundation and the United States Amateur Radio on the International Space Station, UC Berkeley teaching faculty developed a pilot curriculum, Student Mission Control (SMC), to engage middle and high school students with direct access to data and experiments aboard the International Space Station (ISS) to help develop skills of data inquiry, analysis, and exploration. Dan Garcia 0001, Josh Hug, Anirudhan Badrinath, Michael Ball 0001, Lauren Mock |
SIGCSE (2) | 4 |
| 2024 | Igniting Curiosity with BJC Sparks: A Transformative Curriculum for Middle and High School Computer ScienceabstractThe Beauty and Joy of Computing (BJC) Sparks curriculum is an innovative computer science curriculum designed to introduce middle school and early high school students to the world of computer science through functional programming. Developed by the creators of BJC CS Principles (CSP), BJC Sparks presents a simplified yet engaging approach to programming, emphasizing the flow of information through functions. By focusing on functions rather than commands and iteration, BJC Sparks nurtures problem-solving skills and reduces bugs in future programming experiences. Dan Garcia 0001, Mary Fries, Michael Ball 0001, Lauren Mock |
SIGCSE (2) | 3 |
| 2023 | Ten Years of Snap! - Where Should We Go Next?abstractSpring 2023 marks 10 years since \snap was first used with students, and the Snap! Cloud was developed for sharing projects. Since then, nearly 700,000 students and educators have worked on more than 6 million Snap! projects. This BOF serves as an opportunity to meet with the large community of Snap! users that attend SIGCSE. The past three releases have focused on power ideas, such as native array-based data programming, building microworlds, and metaprogramming. We want to have a chance to share success stories, and then discuss: what's next? Michael Ball 0001, Dan Garcia 0001, Yuan Garcia |
SIGCSE (2) | 1 |
| 2023 | Snap! 8 - Smart Script Pics and Metaprogramming for All!abstractSnap! version 8 introduces more than 700 documented fixes and enhancements book-ended by two major new features: smart script pics and metaprogramming. "Smart script pics" enable users to easily share images that embed the program inside the image file! All you need to do is simply drag-and-drop and images to share code. This simple feature makes projects far more collaborative by reducing the burden to share code. Michael Ball 0001, Dan Garcia 0001, Yuan Garcia |
SIGCSE (2) | 1 |
| 2023 | BJC Sparks: A New Functional-First Middle School CS CurriculumabstractWe present our experience with the design and implementation of BJC Sparks, a new introductory computer science curriculum for middle school piloted by ten teachers in the 2021-2022 academic year. Our curriculum is functional-first, using abstraction, functional decomposition, immutable data, and powerful higher-order functions such as map, keep, and combine. Based on a decade of experience teaching thousands of first-time programmers, we believe starting with functions teaches students the habit of solving problems functionally when possible, helping to avoid bugs in later programming experiences. Dan Garcia 0001, Mary Fries, Michael Ball 0001, Pamela Fox, Deanna Gelosi, Lauren Mock, Della Dastur, Dave Briccetti, Bob Kahn |
SIGCSE (1) | 3 |
| 2023 | A New Class of Teaching-Track Faculty: No Ph.D. RequiredabstractDemand for computer science teaching faculty is skyrocketing. In response, many colleges and universities are beginning to advertise for and hire teaching candidates without a PhD. In this panel, we discuss our experiences as faculty in this position and explore how we can promote and support the important contributions that non-PhD faculty have on students. Throughout this interactive panel, we will engage in-person and virtual participants from all levels of higher education to discuss the experiences surrounding teaching track faculty without a PhD. Additionally we will reflect and envision how our community can systematically support and create alternative paths within academia that will allow potential faculty to earn a terminal Master's degree and learn how to be effective teachers at the same time. Kendra Walther, Adam Blank, Michael Ball 0001, Suraj Rampure |
SIGCSE (2) | 3 |
| 2023 | Implementing Faded Parsons Problems in a Very Large CS1 CourseabstractThe poster shows early results implementing Faded Parsons prob- lems at a large public R1 university in a 1000+ enrollment CS1 course. Assignments traditionally involved open-ended code-writing questions that had little scaffolding, and many students spent long periods of independent time working on them. We attempted to improve scaffolding via Faded Parsons problems (FPPs)-a new variant to popular Parsons problems-where students fill in blanks in addition to rearranging lines of code into a valid program. We integrated these problems into assignments by adding an FPP with similar concepts for each code-writing question. By first learning the concepts within the constraints of an FPP, we hoped students would be able to identify and apply those concepts once faced with the code-writing questions. Our findings suggest that students took fewer attempts on code-writing problems than in a previous semes- ter, and survey results indicate that the majority of students found FPPs beneficial as an easier introduction to programming, and that they were good preparation for hand written exams Lauren Zhou, Akshit Dewan, Anirudh Kothapalli, Pamela Fox, Michael Ball 0001 |
SIGCSE (2) | 5 |
| 2022 | Snap! 7 - Microworlds, Scenes, and Extensions!abstractSnap! version 7 introduces three big new features: microworlds, scenes, and extensions. Microworlds allow curriculum designers to hide blocks for novice users, allowing them to focus only on the blocks they need. This is similar to Parson's Problems, in which students rearrange commands to solve a challenge. The new version makes it easy for curriculum developers to design these microworlds; we think this can be truly transformative for younger learners. Scenes provide the ability for a single project to have different resources (sprites, sounds, costumes) that would normally have been cluttered in the same "namespace", but now can be nicely organized into different scenes. The last addition may be the most exciting - extensions allow the many Snap! forks now to be brought back in under the primary Snap! umbrella. To make that work, we have exposed low-level JavaScript functionality, and extensions can make use of those functions to adjust the look and feel of Snap! in many ways, provide different tabs or default blocks, and more. Finally, we would like to present some new ways that our teachers say they are using Hyperblocks (vector operations), introduced last year with Snap! 6. Overall, this new release represents more than 18 months of hard work by a dedicated team, and we would be delighted to share these new features with our SIGCSE family. Dan Garcia 0001, Michael Ball 0001, Yuan Garcia |
SIGCSE (2) | 2 |
| 2022 | Beauty and Joy of Computing: AP CS Principles & Middle School CurriculumabstractThe Beauty and Joy of Computing (BJC) is a CS Principles (CSP) course created at UC Berkeley to reach high school and university nonmajors in computer science. It was chosen for the CSP pilot and endorsed by the College Board as an AP CSP curriculum and PD provider since the first AP CSP exam sitting in 2017. This past year, BJC developed a new course for middle school and early high school that teaches a functional approach to programming, emphasizing iteration and commands, and including exciting projects in graphics, data, and media. In this workshop, we will provide an overview of the BJC middle school and high school curriculum including course materials, teacher resources, and an introduction to Snap!, the chosen visual programming language of BJC. We will not only cover curriculum updates, Snap! updates, BJC for middle school, BJC in other languages, but also dive into labs with hands-on programming. Laptop is required. Michael Ball 0001, Lauren Mock, Dan Garcia 0001, Tiffany Barnes, Marnie Hill, Mary Fries, Pamela Fox, Yuan Garcia |
SIGCSE (2) | 1 |
| 2022 | A New Class of Teaching-Track Faculty: No Ph.D. RequiredabstractDemand for computer science teaching faculty is skyrocketing. In response, many colleges and universities are beginning to advertise for and hire teaching candidates without a PhD. In this panel, we discuss our experiences as faculty in this position and explore how we can promote and support the important contributions that non-PhD faculty have on students. Throughout this interactive panel, we will engage in-person and virtual participants from all levels of higher education to discuss the experiences surrounding teaching track faculty without a PhD. Additionally we will reflect and envision how our community can systematically support and create alternative paths within academia that will allow potential faculty to earn a terminal Master's degree and learn how to be effective teachers at the same time. Kendra Walther, Adam Blank, Michael Ball 0001, Suraj Rampure |
SIGCSE (2) | 3 |
| 2021 | Teaching TAs to Teach: Strategies for TA Trainingabstract"The only thing that scales with undergrads is undergrads". As Computer Science course enrollments have grown, there has been a necessary increase in the number of undergraduate and graduate teaching assistants (TAs, and UTAs). TA duties often extend far beyond grading, including designing and leading lab or recitation sections, holding office hours and creating assignments. Though advanced students, TAs need proper pedagogical training to be the most effective in their roles. Training strategies have widely varied from no training at all, to semester-long prep courses. We will explore the challenges of TA training across both large and small departments. While much of the effort has focused on teams of undergraduates, most presenters have used the same tools and strategies with their graduate students. Training for TAs should not just include the mechanics of managing a classroom, but culturally relevant pedagogy. The panel will focus on the challenges of providing "just in time", and how we manage both intra-course training and department or campus led courses. Michael Ball 0001, Andrew DeOrio, Justin Hsia, Adam Blank |
SIGCSE | 1 |
| 2021 | Effective Video Production for Online and In-Person CoursesabstractThis workshop will be a tutorial on effective media production for computer science courses. We'll spend time breaking down the ways that you can use media in your courses, both live and pre-recorded. Good media production relies heavily on both well-planned curriculum and pre-production. As part of this, we'll focus on our work building courses around short 5-10 minute videos, which have been shown to encourage engagement from students. We'll discuss designing your content and process for efficient turn around, so that you can successfully build a course 'just in time'. Michael Ball 0001, Dan Garcia 0001, Eric Arvai |
SIGCSE | 1 |
| 2021 | Snap!6, Introducing Hyperblocks!abstractIn early July we released Snap! version 6, with many cool new features, including a ground-up rewrite to be faster and reduce memory use by up to 20x. However, the most powerful 'big idea' is the introduction of an APL-style programming paradigm, which we call 'Hyperblocks'. This augments all existing reporter-block scalar inputs to accept N-dimensional lists of any shape as arguments as well, instead of being considered a domain error. These 'dimension-generic' blocks allow us to teach complex concepts without the need for loops or our beloved map block. For example, the domain of the multiply block had previously only been numbers, and if we had wanted to return a new list in which all of the elements were multiplied by 10, we would have had to use map(10*( ))over(data). Now we can simply say 10*data! In Snap! 6, Hyperblocks enable fast vectorized computations, making it much more efficient to do data analysis and media computation projects. There's nothing that beats a live demonstration of all these wonderful features, and we have two veteran power users to take it through its paces. Dan Garcia 0001, Michael Ball 0001 |
SIGCSE | 2 |
| 2021 | Teaching with the Beauty and Joy of Computing - AP CSP and More!abstractThe Beauty and Joy of Computing (BJC) is a CS Principles (CSP) course created at UC Berkeley to reach high school and university non-majors in computer science. It was chosen for the CSP pilot and endorsed by the College Board as an AP CSP curriculum and PD provider since the first AP CSP exam sitting in 2017. In this workshop, we will provide an overview of the BJC curriculum including course materials, teacher resources, and an introduction to Snap!, the chosen visual programming language of BJC. We will not only cover curriculum updates, Snap! updates, BJC for middle school, BJC in other languages, but also dive into labs with hands-on programming. Some of our experienced BJC Lead Teachers will provide support and answer questions based on personal classroom experience. This workshop is intended to be an introduction and update to the Beauty and Joy of Computing curriculum (bjc.edc.org) and community. This is not intended to be an in-depth experience, but an overview. Note: It is recommended to use least a Chromebook during the workshop in order to achieve the learning outcomes. Also, having Multiple/dual monitors will make for a better experience. Marnie Hill, Dan Garcia 0001, Tiffany Barnes, Lauren Mock, Michael Ball 0001, Amy Isvik, Dave Bell |
SIGCSE | 5 |
| 2021 | Active Academic IntegrityabstractEven in an introduction to computer science course, students commit academic misconduct. Traditional plagiarism detection software like MOSS fail to give great results for assignments whose solutions are only a few lines long. We change program variable names and then search student code for those variable names. If their code backups contain the variable names, they are flagged for cheating. Our tool was used in a CS1 course that had a Spring 2020 enrollment of 1800 students. We accused 164 students for the first homework, and enforced 142 penalties (86.6% of accused students) for the first homework. Over the semester we had 452 enforced cases of cheating on homeworks, labs, and projects out of 598 accusations (75.6% of accused students). In Summer 2020 we improved the tool to speed up response time and reduce false positive rate from 24.4% to 21.9%. We built open source software using Python that searches students' code for suspicious keywords and uploads it all to a spreadsheet. We also asked students to provide their past work at the beginning of the semester. This is important because it reduces student stress and reduces false positives. Our work helps the remedial nature of communicating to students they have been flagged for cheating by having the students know that someone is monitoring their work. Students are caught breaking the rules before they develop bad habits that hinder their learning and lead to persistent cheating. Alex Kassil, Michael Ball 0001 |
SIGCSE | 2 |
| 2021 | Strategies for Authentic Assessments of Mastery in CS CoursesabstractAssessing student mastery is an increasingly important aspect of a computer science (CS) course. Recent discussions in the SIGCSE community have questioned traditional assessment and grading practices, such as the use of high-stakes exams and standardized programming assignments. As an alternative, authentic assessments of mastery have been proposed with the goal of creating more equitable and inclusive classrooms that support a diversity in student discourses and epistemologies. This Birds-of-a-Feather session will provide a forum for conversations around assessment of student mastery. Although conversations will likely draw on experiences from teaching remote courses, the discussions can also inspire assessment ideas and methods that work for in-person instruction as well. The discussion leaders will begin by sharing their experiences using formative, low-stakes quizzes; two-stage individual and group assessments; student-generated video problem solutions; written research papers; and creative projects. For each assessment, the discussion leaders expect to address questions such as: What were the goals? What classes was it used in? How did we grade it? How does it scale? This session is a space for participants to expand our collective understanding of how authentic assessments can be used in CS courses and share ideas to inform research and practice toward grading for equity. Afterward, discussion notes will be compiled and publicly archived at https://kevinl.info/authentic-assessments Kevin Lin 0001, Lina Battestilli, Michael Ball 0001 |
SIGCSE | 3 |
| 2020 | Teaching TAs To Teach: Strategies for TA Trainingabstract"The only thing that scales with undergrads is undergrads". As Computer Science course enrollments have grown, there has been a necessary increase in the number of undergraduate and graduate teaching assistants (TAs, and UTAs). TA duties often extend far beyond grading, including designing and leading lab or recitation sections, holding office hours and creating assignments. Though advanced students, TAs need proper pedagogical training to be the most effective in their roles. Training strategies have widely varied from no training at all, to semester-long prep courses. We will explore the challenges of TA training across both large and small departments. While much of the effort has focused on teams of undergraduates, most presenters have used the same tools and strategies with their graduate students. Training for TAs should not just include the mechanics of managing a classroom, but culturally relevant pedagogy. The panel will focus on the challenges of providing "just in time", and how we manage both intra-course training and department or campus led courses. Michael Ball 0001, Justin Hsia, Heather Pon-Barry, Andrew DeOrio, Adam Blank |
SIGCSE | 1 |
| 2020 | The Beauty and Joy of Computing Curriculum and Teacher Professional DevelopmentabstractThe Beauty and Joy of Computing (BJC) is a CS Principles course developed at UC Berkeley for high school juniors through university non-majors. Together, UC Berkeley, the Education Development Center, and NC State have brought BJC to 700+ teachers nationwide. Since 2011, NC State has developed regional partnerships and a train-the-trainer model to offer nationwide PD to 600+ high school teachers. Our guiding philosophy is to meet students where they are, but not leave them there. BJC covers the big ideas and computational thinking practices in the AP CSP curriculum framework using Snap!, an easy-to-learn blocks-based programming language, and powerful computing ideas like recursion, higher-order functions, and computability. Through BJC, students create beautiful images, and realize that code itself can be beautiful. Having fun is an explicit course goal. BJC takes a "lab-centric" approach, and most learning occurs through guided programming labs where students explore and play. In this workshop, we will provide an overview of BJC, share experiences as instructors at university and high school levels, and share details of summer PD opportunities. Laptop needed. Michael Ball 0001, Lauren Mock, Dan Garcia 0001, Tiffany Barnes, Marnie Hill, Alexandra Milliken, Josh Paley, Efrain Lopez, Jason Bohrer |
SIGCSE | 1 |
| 2020 | Snap! v5, Our Biggest, Feature-filled Release Ever!abstractIn early June, we released Snap! version 5, with more new features than in any previous release. We now have a community website where users can share and publish projects so others can find and remix them, and where they can ask questions and discuss the beauty and joy of computing. We can now embed Snap! projects in other web pages. We've also enhanced the programming language, making it easier to discover and to use powerful blocks for analyzing data and transforming media. Did you know you can now use the video motion from the camera as an input device? How about painting by whistling? There's nothing that beats a live demonstration of all these wonderful features, and we have two veteran power users to take it through its paces. Dan Garcia 0001, Michael Ball 0001 |
SIGCSE | 2 |
| 2019 | Snap! A Look at 5 Years, 250, 000 Users and 2 Million ProjectsabstractSnap! is blocks-based programming language that inherits a design and vocabulary from Scratch, but has been extended with support for user-defined functions, and robust built-in libraries. The Snap! Cloud software has been running for over 5 years and recently passed 250,000 users and 2 million projects of which nearly 600,000 are shared publicly. We have been to do an exploratory analysis the database of public projects to better understand how students are programming an using Snap!. This analysis is being conducted using a cleaned up XML-based representation of Snap! projects, which allows querying for data using SQL to extract information from project files. So far, we've seen that projects in Snap! computationally more complex than those found in Scratch, and make use of Snap!'s advanced features. Combined with growing use, we hope to give context to the ways which Snap! (and other) blocks-based languages are being used in classrooms. While there has been a discussion of code smells in Scratch, we haven't seen any discussions using Snap! and hope to show its additional functionality helps write clean code. Finally, we are interested in presenting a clear story of growing use for Snap! that is a compelling case to teachers (and subsequently their students) that blocks-based languages can be quite popular. Michael Ball 0001, Jens Mönig, Bernat Romagosa, Brian Harvey |
SIGCSE | 1 |
| 2018 | IRT in 5 Minutes: Easy Ways to Better Understand an Assessment (Abstract Only)abstractThis lightning talk will give a very quick introduction to "Item Response Theory", or IRT. IRT evolved from psychometrics as one method for evaluating the Quality of survey questions. In the classroom, IRT is a fantastic way to gain better insights into the quality and efficacy of the assessments we offer. IRT has been used by testing companies to evaluate exams like the GRE, SAT, and AP, but the same ideas can be applied to our classrooms. By applying some ideas from IRT we can start to look at exam scores with just a few simple charts, and we can begin to assess whether assigned questions are effective. We'll start by looking at correlations between individual question scores and overall assessment scores. While this is a simplification of IRT, we'll look at how we can use it to diagnose potential exam errors. The goal is to better understand the exams we give our students, and we can use this as a jumping off point to continue to evaluate our assessments. Michael Ball 0001 |
SIGCSE | 1 |
| 2018 | Technology We Can't Live Without!, revisitedabstractThe pace of technology for use in computing education is staggering. In recent years, the following technologies have completely transformed our teaching: Piazza, GradeScope, YouTube, Google Docs, Doodle and whenisgood.net, Skype and Google Hangout, and Khan Academy among others. Hardware has also played a part. We love our Zoom digital voice recorder (for recording CD-quality lecture audio), Blue Yeti USB mike (for audio/videoconferences), and iClickers (for engaging students in class). This panel is an outgrowth of a Technology that Educators of Computing Hail (TECH) Birds of a Feather session that we've held at SIGCSE for seven years, and the panel from SIGCSE 2015 [1] that served as a springboard for a regular column in ACM Inroads [2]. It will provide a chance for seasoned high school and university educators to show you the technologies that have "bubbled to the top" for them, and what key problems they solve. Like concert musicians, they will give live demonstrations and reveal the configuration options required to make their technology "sing". We hope this forum will allow the presenters to dive deeply into the common use cases of these technologies, highlight why they are invaluable, share any "gotchas" they've uncovered, and explain how others can adopt them at their institutions. The highlight of the panel is when the audience, inspired by the presentations, is invited to share their favorite "can't live without" technologies as well. Ria Galanos, Michael Ball 0001, John P. Dougherty, Joe Hummel, David J. Malan |
SIGCSE | 2 |
| 2018 | AP CS Principles and The Beauty and Joy of Computing Curriculum: (Abstract Only)abstractThe Beauty and Joy of Computing (BJC) is a CS Principles (CSP) course developed at UC Berkeley, intended for high school juniors through university non-majors. It was twice chosen as a CSP pilot, and both the College Board and code.org have endorsed it. Since 2011, we have offered professional development to over 400 high school teachers. BJC covers the big ideas and computational thinking practices required in the AP CSP curriculum framework, using an easy-to-learn blocks-based programming language called Snap! (based on Scratch). During this workshop, we will provide an overview of the BJC curriculum, share our experiences as instructors of the course at the university and high school levels, and share details of potential summer professional development opportunities. Attendees should be prepared to program a BJC project in the Snap! environment. Please bring laptops with the Chrome browser installed. Alexandra Milliken, Michael Ball 0001, Lauren Mock |
SIGCSE | 2 |
| 2017 | Writing Autograders for Snap! And Integrating them Into Your Course (Abstract Only)abstractWhile text based languages have been (relatively) straightforward to grade automatically, visual programming languages have been largely left out of the equation. However, as the demand for introductory CS courses has recently grown, so too has the interest in CS courses that use visual programming languages, and thus the need for a scalable solution to providing student feedback. The demo will present a system an autograder for Snap!, a visual programming language inspired by Scratch. Our autograder is a hosted solution which would allow other courses to use our tools with little effort. At the most basic level, the autograder contains a database of questions, test cases, and a method for presenting results to students. However, there are additional features for integration through LTI and advanced data analysis. Michael Ball 0001 |
SIGCSE | 1 |
| 2017 | Implementing "In-Lab" Autograding for Snap! (Abstract Only)abstractWhile text based languages have been (relatively) straightforward to grade automatically, visual programming languages have been largely left out of the equation. However, as the demand for introductory CS courses has recently grown, so too has the interest in CS courses that use visual programming languages, and thus the need for a scalable solution to providing student feedback. In this poster we present a system design for an autograder for Snap!, a visual programming language inspired by Scratch. We demonstrate how we integrated our autograder into UC Berkeley's CS10 and compare student success of autograded lab assessments to oral lab check offs. We demonstrate how we offered real-time feedback to a course of 300 students, and how we integrated our tools into an edX MOOC with 15,000 students. Our autograder is a hosted solution which would allow other courses to use our tools with little effort. Michael Ball 0001 |
SIGCSE | 1 |
| 2016 | Using Instant Chat for Fun and for Profit to Run a Large Class (Abstract Only)abstractThis lightning talk describes the idea of "chat ops" applied to the classroom. Chat Ops is a (growing) industry practice which uses instant messaging (such as IRC, or Slack) to automate common development or monitoring tasks, such as maintaining and deploying a website. Instead of deploying a site, we use the process of ChatOps to help run large classes, and even individual class sections by automating tasks that are tedious or error prone. We've extended a bot framework, Hubot, with the tools that we need. We can automate releasing student scores, updating student's access to assignments, or handling in-class check offs with just a line of plain text. Chat messages also have the benefit that they are loggable and show everyone on the staff what's going on and why. We'd like to show why augmenting traditional email systems with chat messages can help improve communication and save time, but can also be an enjoyable way to build a community. Michael Ball 0001 |
SIGCSE | 1 |
| 2016 | Autograding and Feedback for Snap!: A Visual Programming Language (Abstract Only)abstractWhile text based languages have been (relatively) easy to grade automatically, visual programming languages have been largely left out of the equation. However, as the demand for introductory CS courses has recently grown, so too has the interest in CS courses that use visual programming languages, and thus the need for a scalable solution to providing student feedback. In this poster we present a system design for an autograder for Snap!, a visual programming language designed at UC Berkeley, inspired by Scratch. Creativity and open-ended responses are an important part of many CS0 courses, such as the Beauty and Joy of Computing, our autograder includes tools that allow instructors to build robust feedback mechanisms that handle a wide variety of student submissions. We also present our initial work to integrate this system into edX for a series of MOOCs as well as a prototype of integrating this tool into a traditional LMS on campus. Michael Ball 0001, Dan Garcia 0001 |
SIGCSE | 1 |
| 2016 | AP CS Principles and The Beauty and Joy of Computing Curriculum (Abstract Only)abstractThe Beauty and Joy of Computing (BJC) is a CS Principles (CSP) course developed at UC Berkeley, intended for high school juniors through university non-majors. It was twice chosen as a CSP pilot, and both the College Board and code.org have endorsed it. Since 2011, we have offered professional development to over 240 high school teachers. Our guiding philosophy is to meet students where they are, but not to leave them there. It covers the big ideas and computational thinking practices required in the AP CSP curriculum framework using an easy-to-learn blocks-based programming language called Snap! (based on Scratch), and powerful computer science ideas like recursion, higher-order functions and computability. Through the course, students learn to create beautiful images, and realize that code itself can be beautiful. Having fun is an explicit course goal. We take a "lab-centric" approach, and much of the learning occurs through guided programming labs that ask students to explore and play. In this workshop, we will provide an overview of BJC, share our experiences as instructors of the course at the university and high school level, provide a glimpse into a typical week of the course, and share details of potential crowd-funded summer professional development opportunities. This is a hands-on workshop. Laptops are required, and all "handouts" will be digital. Dan Garcia 0001, Tiffany Barnes, Michael Ball 0001, Emil Biga, Josh Paley, Marnie Hill, Nathan Mattix, Parisa Safa, Sean Morris, Shawn Kenner |
SIGCSE | 3 |
| 2015 | Oh, Snap! Enabling and Encouraging Success in CS1 (Abstract Only)abstractCS10, is UC Berkeley's CS0 course. Each semester we have between 40% and 50% of our students continue on to CS61A, our CS1 course. Meanwhile an average of 25% more students express interest in continuing learning computer science through other means. CS10 is taught in a visual language called Snap! and CS61A in Python. This poster explores some of the trends we have seen between CS10 and CS61A enrollment, and our new "Besides Blocks" curriculum which helps transition students from a visual to text based language. Besides Block is approximately one fourth of the CS10 curriculum which introduces Python in the context of the Turtle Graphics system, and a tool called Codification which is a way of translating Snap! blocks to Python. Michael Ball 0001, Lauren Mock, Jon McKinsey, Zachary MacHardy, Dan Garcia 0001, Nathaniel Titterton, Brian Harvey |
SIGCSE | 1 |
| 2014 | L@S 2014 demo: best practices for MOOC videoabstractUC Berkeley's CS10 course captures high-definition lectures featuring a unique overlay of the professor over slides. This paper is a brief overview of the demo we presented at [email protected] 2014. We'll also go into other forms of video we incorporate into the class. Finally, we'll present tips and tricks we've learned in both the pre-production and production stages of the video process. Dan Garcia 0001, Michael Ball 0001, Aatash Parikh |
L@S | 2 |