Traditional Beowulf clusters have been homogeneous platforms for distributed-memory MIMD parallelism. However, the shift to multicore architectures has made shared-memory MIMD parallelism increasingly important, and inexpensive manycore GPGPUs have revived SIMD parallelism. This paper presents a case study in designing and building a heterogeneous cluster as a learning platform for tera-scale distributed- and shared-memory MIMD parallelism, and GPGPU parallelism.
{"title":"A cluster for CS education in the manycore era","authors":"Joel C. Adams, Kathy Hoobeboom, Jonathan Walz","doi":"10.1145/1953163.1953177","DOIUrl":"https://doi.org/10.1145/1953163.1953177","url":null,"abstract":"Traditional Beowulf clusters have been homogeneous platforms for distributed-memory MIMD parallelism. However, the shift to multicore architectures has made shared-memory MIMD parallelism increasingly important, and inexpensive manycore GPGPUs have revived SIMD parallelism. This paper presents a case study in designing and building a heterogeneous cluster as a learning platform for tera-scale distributed- and shared-memory MIMD parallelism, and GPGPU parallelism.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"62 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116349814","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
O. Astrachan, T. Barnes, Daniel D. Garcia, J. Paul, B. Simon, L. Snyder
Since 2008, NSF and The College Board, have been developing a "Computer Science: Principles" curriculum to "introduce students to the central ideas of computing and CS, to instill ideas and practices of computational thinking, and to have students engage in activities that show how computing and CS change the world". We report on the initial pilot of the CS Principles curriculum at 5 universities in 2010/11. The instructors from the pilot schools will describe their classes, the piloting experience (teaching under a microscope), and successes and failures. Emphasis will be on: mapping the CS Principles curriculum to a college's specific needs, and how others can use or modify the existing materials for pilots at their schools.
{"title":"CS principles: piloting a new course at national scale","authors":"O. Astrachan, T. Barnes, Daniel D. Garcia, J. Paul, B. Simon, L. Snyder","doi":"10.1145/1953163.1953281","DOIUrl":"https://doi.org/10.1145/1953163.1953281","url":null,"abstract":"Since 2008, NSF and The College Board, have been developing a \"Computer Science: Principles\" curriculum to \"introduce students to the central ideas of computing and CS, to instill ideas and practices of computational thinking, and to have students engage in activities that show how computing and CS change the world\". We report on the initial pilot of the CS Principles curriculum at 5 universities in 2010/11. The instructors from the pilot schools will describe their classes, the piloting experience (teaching under a microscope), and successes and failures. Emphasis will be on: mapping the CS Principles curriculum to a college's specific needs, and how others can use or modify the existing materials for pilots at their schools.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123243865","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In 1995, my research team and I decided to create TeachScheme!, an educational outreach project, with the hope that our work on programming languages could effect a dramatic change in K-12 computer science. Specifically, we envisioned a virtuous cycle of two mutually reinforcing ideas. On the one hand, we would create a design-oriented curriculum path from middle school through college. On the other hand, our approach would help kids with learning school mathematics. Hence a course on programming would benefit every student, not just those who end up choosing computer science as a college major. At this point, we have a new design-oriented curriculum; a pedagogic program development environment to make it fun; and a series of matching programming languages. After focusing at the overlap between high schools and colleges at first, we now use after-school programs to move upstream, and we are working on two major downstream courses for the second semester in college: one on object-oriented design and another on logic in program design. My talk will focus on just one aspect of the project: the design-oriented curriculum and its smooth path from middle school to college. I will first demonstrate how to teach an intellectually interesting and fun course on programming with something that looks like plain school mathematics. For the rest of the talk, I will sketch the path from there through college.
{"title":"TeachScheme!","authors":"M. Felleisen","doi":"10.1145/1953163.1953165","DOIUrl":"https://doi.org/10.1145/1953163.1953165","url":null,"abstract":"In 1995, my research team and I decided to create TeachScheme!, an educational outreach project, with the hope that our work on programming languages could effect a dramatic change in K-12 computer science. Specifically, we envisioned a virtuous cycle of two mutually reinforcing ideas. On the one hand, we would create a design-oriented curriculum path from middle school through college. On the other hand, our approach would help kids with learning school mathematics. Hence a course on programming would benefit every student, not just those who end up choosing computer science as a college major. At this point, we have a new design-oriented curriculum; a pedagogic program development environment to make it fun; and a series of matching programming languages. After focusing at the overlap between high schools and colleges at first, we now use after-school programs to move upstream, and we are working on two major downstream courses for the second semester in college: one on object-oriented design and another on logic in program design. My talk will focus on just one aspect of the project: the design-oriented curriculum and its smooth path from middle school to college. I will first demonstrate how to teach an intellectually interesting and fun course on programming with something that looks like plain school mathematics. For the rest of the talk, I will sketch the path from there through college.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123968206","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Ville Isomöttönen, Antti-Jussi Lakanen, V. Lappalainen
Several programming environments have been constructed to facilitate novice programming at K-12 and CS0/CS1 levels. The environments can be roughly divided into those using visual or textual programming. This paper presents a K-12 game programming course concept based on textual programming. The concept is based on an easy-to-use C# library, called Jypeli, built on top of Microsoft XNA Framework. The library tries to maintain advantages of visual programming and avoid challenges of textual programming. In particular, the library helps beginners to program their first games in a short period of time and without a heavy syntactic load. The course concept and an initial evaluation consisting of student feedback and a literature rationale are presented.
{"title":"K-12 game programming course concept using textual programming","authors":"Ville Isomöttönen, Antti-Jussi Lakanen, V. Lappalainen","doi":"10.1145/1953163.1953296","DOIUrl":"https://doi.org/10.1145/1953163.1953296","url":null,"abstract":"Several programming environments have been constructed to facilitate novice programming at K-12 and CS0/CS1 levels. The environments can be roughly divided into those using visual or textual programming. This paper presents a K-12 game programming course concept based on textual programming. The concept is based on an easy-to-use C# library, called Jypeli, built on top of Microsoft XNA Framework. The library tries to maintain advantages of visual programming and avoid challenges of textual programming. In particular, the library helps beginners to program their first games in a short period of time and without a heavy syntactic load. The course concept and an initial evaluation consisting of student feedback and a literature rationale are presented.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125464036","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Daniel D. Garcia, Z. Dodds, Timothy Huang, Samuel A. Rebelsky
Be an opener of doors for such as come after thee..." - Ralph Waldo Emerson, 1844. At the SIGCSE Symposium in 2007, we presented a panel in which seasoned teaching faculty from four large, PhD-granting universities shared the teaching tips we wished we'd known before starting our careers [1]. The difference from earlier "Teaching Tips" panels [6] was that our suggestions were meant to be hidden gems less often highlighted by our colleagues or by some of the best-known teaching resources [2, 3, 4, 8, 10, 11]. We clustered our tips into several categories: Lecturing, Office (hours), Staff (mentoring), Exams (authoring & administering), Labs (authoring & running), Section (TA-led discussion), Projects (and homework; authoring & supporting), and Meta (advice spanning categories). The session was received quite well, and the audience contributed many of their own teaching tips throughout the presentation. Since all of the presenters in 2007 regularly taught large, hundred-student classes, many of their suggestions (e.g., lecturing in a large venue or managing an army of teaching assistants) were not relevant to the experience of teaching small classes. Quite a few attendees suggested there be a follow-up session with presenters who could address the challenges specific to small college or university classes. To that end, we present the "Small College Class" edition, with seasoned educators who have expertise teaching smaller classes at their university or college. The position statements that follow offer a random sampling of two of these "hidden" pearls; presenters will share many more during the session, and time will be provided for audience participation. We'll endeavor to capture all the tips for an online collection. Complementing the categories above, we have added two more that capture the intimate setting of small classes: - Classroom (organization, interactions, and incentives) - Personal (fostering relationships).
{"title":"Teaching tips we wish they'd told us before we started, small college class edition","authors":"Daniel D. Garcia, Z. Dodds, Timothy Huang, Samuel A. Rebelsky","doi":"10.1145/1953163.1953257","DOIUrl":"https://doi.org/10.1145/1953163.1953257","url":null,"abstract":"Be an opener of doors for such as come after thee...\" - Ralph Waldo Emerson, 1844. At the SIGCSE Symposium in 2007, we presented a panel in which seasoned teaching faculty from four large, PhD-granting universities shared the teaching tips we wished we'd known before starting our careers [1]. The difference from earlier \"Teaching Tips\" panels [6] was that our suggestions were meant to be hidden gems less often highlighted by our colleagues or by some of the best-known teaching resources [2, 3, 4, 8, 10, 11]. We clustered our tips into several categories: Lecturing, Office (hours), Staff (mentoring), Exams (authoring & administering), Labs (authoring & running), Section (TA-led discussion), Projects (and homework; authoring & supporting), and Meta (advice spanning categories). The session was received quite well, and the audience contributed many of their own teaching tips throughout the presentation. Since all of the presenters in 2007 regularly taught large, hundred-student classes, many of their suggestions (e.g., lecturing in a large venue or managing an army of teaching assistants) were not relevant to the experience of teaching small classes. Quite a few attendees suggested there be a follow-up session with presenters who could address the challenges specific to small college or university classes. To that end, we present the \"Small College Class\" edition, with seasoned educators who have expertise teaching smaller classes at their university or college. The position statements that follow offer a random sampling of two of these \"hidden\" pearls; presenters will share many more during the session, and time will be provided for audience participation. We'll endeavor to capture all the tips for an online collection. Complementing the categories above, we have added two more that capture the intimate setting of small classes: - Classroom (organization, interactions, and incentives) - Personal (fostering relationships).","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131019369","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A social robot is a robotic platform that supports natural interaction with people in a human-scale environment. Such a platform allows interesting opportunities for both traditional Computer Science students and students from other disciplines, such as psychology, philosophy, design and communications. In this paper, we describe a new social robotic platform for educational uses that is equipped with a social face, arms for gesturing, advanced sensory, mobile base, and ROS integration. By using off-the-shelf and rapidly prototyped components, together with open source software, this platform is low-cost, easy to use, and easy to reproduce.
{"title":"Nelson: a low-cost social robot for research and education","authors":"Michael Ferguson, N. Webb, T. Strzalkowski","doi":"10.1145/1953163.1953230","DOIUrl":"https://doi.org/10.1145/1953163.1953230","url":null,"abstract":"A social robot is a robotic platform that supports natural interaction with people in a human-scale environment. Such a platform allows interesting opportunities for both traditional Computer Science students and students from other disciplines, such as psychology, philosophy, design and communications. In this paper, we describe a new social robotic platform for educational uses that is equipped with a social face, arms for gesturing, advanced sensory, mobile base, and ROS integration. By using off-the-shelf and rapidly prototyped components, together with open source software, this platform is low-cost, easy to use, and easy to reproduce.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"96 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127890734","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Professors are continually exploring ways to increase the engagement of their students, but are sometimes concerned that doing "fun" things in class could adversely affect student learning. Over the course of several semesters, we had the same professor teach several CS1 and CS2 courses for computer science and game development majors. As part of his classroom approach, the professor used a student response system to engage the students in the flow of the lecture. In this paper, we examine the relationships between student participation using the student response system and student performance in the course assessments. We also explore the relationship between each student's perceived mastery of course topics and their demonstrated mastery of those topics on the Final Exam. Finally, we explore several differences between the multiple courses included in the study.
{"title":"Using a student response system in CS1 and CS2","authors":"A. Chamillard","doi":"10.1145/1953163.1953253","DOIUrl":"https://doi.org/10.1145/1953163.1953253","url":null,"abstract":"Professors are continually exploring ways to increase the engagement of their students, but are sometimes concerned that doing \"fun\" things in class could adversely affect student learning. Over the course of several semesters, we had the same professor teach several CS1 and CS2 courses for computer science and game development majors. As part of his classroom approach, the professor used a student response system to engage the students in the flow of the lecture. In this paper, we examine the relationships between student participation using the student response system and student performance in the course assessments. We also explore the relationship between each student's perceived mastery of course topics and their demonstrated mastery of those topics on the Final Exam. Finally, we explore several differences between the multiple courses included in the study.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"531 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125068665","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
We present extensions to the Embedded Xinu educational operating system that, when coupled with a target device like the Cisco-Linksys WRT54GL, provide for an extremely attractive hands-on laboratory platform in network courses. We present classroom and research lab evidence for the usefulness of this platform as a network education tool, and discuss its significance in the context of a wide spectrum of competitor systems. This project is part of a larger effort to bring cost-effective, hands-on embedded system laboratory experiences into systems courses throughout the undergraduate computer science core.
{"title":"Hands-on networking labs with embedded routers","authors":"Dennis Brylow, Kyle Thurow","doi":"10.1145/1953163.1953283","DOIUrl":"https://doi.org/10.1145/1953163.1953283","url":null,"abstract":"We present extensions to the Embedded Xinu educational operating system that, when coupled with a target device like the Cisco-Linksys WRT54GL, provide for an extremely attractive hands-on laboratory platform in network courses. We present classroom and research lab evidence for the usefulness of this platform as a network education tool, and discuss its significance in the context of a wide spectrum of competitor systems. This project is part of a larger effort to bring cost-effective, hands-on embedded system laboratory experiences into systems courses throughout the undergraduate computer science core.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125734499","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Recently, several frameworks have been developed for writing mobile and web applications in Java, making the development of web and mobile applications accessible to HCI students with only a CS1 Java background. In this paper we describe using student projects based on the Google Android mobile platform and Google's Web Toolkit to provide students with experience designing and implementing user interfaces for mobile and web applications. Specific examples demonstrate how programming on these platforms reinforces standard HCI topics. As a result of being able to learn mobile device programming in the context of "cool" Google platforms, students expressed increased interest in studying HCI.
最近,已经开发了几个框架,用于在Java中编写移动和web应用程序,使得只有CS1 Java背景的HCI学生也可以开发web和移动应用程序。在本文中,我们描述了使用基于Google Android移动平台和Google Web Toolkit的学生项目,为学生提供设计和实现移动和Web应用程序用户界面的经验。具体示例演示了在这些平台上编程如何强化标准HCI主题。由于能够在“酷”的谷歌平台上学习移动设备编程,学生们对学习HCI的兴趣增加了。
{"title":"Human computer interaction that reaches beyond desktop applications","authors":"S. Loveland","doi":"10.1145/1953163.1953328","DOIUrl":"https://doi.org/10.1145/1953163.1953328","url":null,"abstract":"Recently, several frameworks have been developed for writing mobile and web applications in Java, making the development of web and mobile applications accessible to HCI students with only a CS1 Java background. In this paper we describe using student projects based on the Google Android mobile platform and Google's Web Toolkit to provide students with experience designing and implementing user interfaces for mobile and web applications. Specific examples demonstrate how programming on these platforms reinforces standard HCI topics. As a result of being able to learn mobile device programming in the context of \"cool\" Google platforms, students expressed increased interest in studying HCI.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-03-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126051229","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}