Note: When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external site maintained by the publisher.
Some full text articles may not yet be available without a charge during the embargo (administrative interval).
What is a DOI Number?
Some links on this page may take you to non-federal websites. Their policies may differ from this site.
-
Computer Science (CS) Frontiers is a 4-module curriculum, 9 weeks each, designed to bring the frontiers of computing to high school girls for exploration and development. Our prior work has showcased the work in developing and piloting our first three modules, Distributed Computing, Artificial Intelligence (AI), and the Internet of Things (IoT). During the summer of 2022, we piloted the completed curricula, including the new Software Engineering module, with 56 high school camp attendees. This poster reports on the newly developed software engineering module, the experiences of 7 teachers and 11 students using the module, and our plans for improving this module prior to its release in formal high school classrooms. Initial survey and interview data indicate that teachers became comfortable with facilitating the open-endedness of the final projects and that students appreciated the connections to socially relevant topics and the ability of their projects to help with real-world problems such as flood prevention and wheelchair accessibility. The CS Frontiers curriculum has been added to course offerings in Tennessee and adoption through the North Carolina Department of Public Instruction is currently underway. Teachers from Tennessee, North Carolina, Massachusetts, and New York have piloted the materials. Together with researchers, we are working to package the course and curricula for widespread adoption as additional support to students as they try out computing courses in their high school pathways. Our aim is to increase the interest and career awareness of CS for high school girls so they may have an equitable footing to choose CS as a potential major or career.more » « less
-
Robots are a popular and engaging educational tool for teaching computational thinking, but they often have significant costs and limitations for classroom use. Switching to a simulated environment can eliminate many of these difficulties. By also providing students with a block-based programming environment, the barrier to entry can be further reduced. This paper presents a networked virtual robotics platform designed to create an environment which is highly accessible for novice students and their teachers alike, along with components of a curriculum designed to teach computational thinking skills through robotics programming challenges, including autonomous challenges and in-class competitions. Students access this platform through an extension of the same web interface used for programming their robots, which allows students to collaborate on code and view a shared simulated virtual space. Previously, this virtual robotics platform was used only to facilitate distance education. This paper demonstrates its use in an in-person class during the Spring 2022 semester, illustrating the affordances of a virtual robotics environment for face-to-face learning contexts as well. Students' computational thinking skills were evaluated with assessments both before and after the class, along with surveys and interviews given to determine their opinions and outlooks regarding computer science. The results show that students had a significant improvement in both attitudes and aptitudes.
-
Distributed computing, computer networking, and the Internet of Things (IoT) are all around us, yet only computer science and engineering majors learn the technologies that enable our modern lives. This paper introduces PhoneIoT, a mobile app that makes it possible to teach some of the basic concepts of distributed computation and networked sensing to novices. PhoneIoT turns mobile phones and tablets into IoT devices and makes it possible to create highly engaging projects through NetsBlox, an open-source block-based programming environment focused on teaching distributed computing at the high school level. PhoneIoT lets NetsBlox programs—running in the browser on the student’s computer—access available sensors. Since phones have touchscreens, PhoneIoT also allows building a Graphical User Interface (GUI) remotely from NetsBlox, which can be set to trigger custom code written by the student via NetsBlox’s message system. This approach enables students to create quite advanced distributed projects, such as turning their phone into a game controller or tracking their exercise on top of an interactive Google Maps background with just a few blocks of code.more » « less