The Language INtegrated Query (LINQ) language is a declarative query language integrated within an object-oriented programming language that provides a unified paradigm for querying relations, objects, and XML (ROX). This paper describes a suite of exercises, from cooperative in-class activities to larger-scale graded assignments, for incorporating LINQ into the database curriculum. These exercises support various student learning outcomes and illustrate the applicability of LINQ by querying the same database enterprise across the ROX data models.
{"title":"LINQ ROX!: integrating LINQ into the database curriculum","authors":"S. Dietrich, Mahesh B. Chaudhari","doi":"10.1145/1953163.1953251","DOIUrl":"https://doi.org/10.1145/1953163.1953251","url":null,"abstract":"The Language INtegrated Query (LINQ) language is a declarative query language integrated within an object-oriented programming language that provides a unified paradigm for querying relations, objects, and XML (ROX). This paper describes a suite of exercises, from cooperative in-class activities to larger-scale graded assignments, for incorporating LINQ into the database curriculum. These exercises support various student learning outcomes and illustrate the applicability of LINQ by querying the same database enterprise across the ROX data models.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"91 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":"129088972","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}
During the past 20 years, probability theory has become a critical element in the development of many areas in computer science. Commensurately, in this paper, we argue for expanding the coverage of probability in the computing curriculum. Specifically, we present details of a new course we have developed on Probability Theory for Computer Scientists. An analysis of course evaluation data shows that students find the contextualized content of this class more relevant and valuable than general presentations of probability theory. We also discuss different models for expanding the role of probability in different curricular programs that may not have the capacity to teach a full course on the subject.
{"title":"A course on probability theory for computer scientists","authors":"M. Sahami","doi":"10.1145/1953163.1953245","DOIUrl":"https://doi.org/10.1145/1953163.1953245","url":null,"abstract":"During the past 20 years, probability theory has become a critical element in the development of many areas in computer science. Commensurately, in this paper, we argue for expanding the coverage of probability in the computing curriculum. Specifically, we present details of a new course we have developed on Probability Theory for Computer Scientists. An analysis of course evaluation data shows that students find the contextualized content of this class more relevant and valuable than general presentations of probability theory. We also discuss different models for expanding the role of probability in different curricular programs that may not have the capacity to teach a full course on the subject.","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":"131313667","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 this paper we describe a new "research and action" based course designed to give undergraduate students the opportunity to think beyond the classroom, to reach out and examine some of the broader issues surrounding computing. "Understanding and Broadening the Images of Computing" researches the images, the realities and the (mis)perceptions of computing that influence public understanding and participation in the field. Along with research students are encouraged to see themselves as future professionals who can be actively involved in re-shaping and re-presenting the field. To this purpose, students build an action component working in teams to develop and implement a public presentation aimed at broadening understanding of computing.
{"title":"The images of computing: engaging undergraduates in the broad issues of computer science","authors":"C. Frieze","doi":"10.1145/1953163.1953322","DOIUrl":"https://doi.org/10.1145/1953163.1953322","url":null,"abstract":"In this paper we describe a new \"research and action\" based course designed to give undergraduate students the opportunity to think beyond the classroom, to reach out and examine some of the broader issues surrounding computing. \"Understanding and Broadening the Images of Computing\" researches the images, the realities and the (mis)perceptions of computing that influence public understanding and participation in the field. Along with research students are encouraged to see themselves as future professionals who can be actively involved in re-shaping and re-presenting the field. To this purpose, students build an action component working in teams to develop and implement a public presentation aimed at broadening understanding of computing.","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":"126376198","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}
{"title":"Session details: Peer teaching and tutoring","authors":"Jian Zhang","doi":"10.1145/3258446","DOIUrl":"https://doi.org/10.1145/3258446","url":null,"abstract":"","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"41 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":"122260846","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 this paper we revisit previous research to elaborate on the question: "Can graduating students design software systems?" The work concluded that the answer was "not really". We wished to determine if this was true currently at our institution and also to look at whether students were able to design software in groups, and evaluate others' designs. In summary, it appears that our students, just as in the original experiment, struggle with doing design, even in a group situation. The representation of behavioral design was particularly lacking. That said, students were able to recognize weaknesses when evaluating other group designs. Based on our findings, we provide several pedagogic recommendations.
{"title":"Can graduating students design: revisited","authors":"Chris W. Loftus, L. Thomas, Carol Zander","doi":"10.1145/1953163.1953199","DOIUrl":"https://doi.org/10.1145/1953163.1953199","url":null,"abstract":"In this paper we revisit previous research to elaborate on the question: \"Can graduating students design software systems?\" The work concluded that the answer was \"not really\". We wished to determine if this was true currently at our institution and also to look at whether students were able to design software in groups, and evaluate others' designs. In summary, it appears that our students, just as in the original experiment, struggle with doing design, even in a group situation. The representation of behavioral design was particularly lacking. That said, students were able to recognize weaknesses when evaluating other group designs. Based on our findings, we provide several pedagogic recommendations.","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":"124867678","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}
{"title":"Session details: Keynote","authors":"Thomas J. Cortina","doi":"10.1145/3258426","DOIUrl":"https://doi.org/10.1145/3258426","url":null,"abstract":"","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"39 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":"128016028","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}
{"title":"Session details: Algorithms","authors":"Delvin C. Defoe","doi":"10.1145/3258439","DOIUrl":"https://doi.org/10.1145/3258439","url":null,"abstract":"","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"7 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":"117008086","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 a one-semester transition course intended to bridge the gap between a Java-based introductory sequence and advanced systems courses. We chose to structure our course as a series of lab assignments that, while independent, are also milestones in a single main project, writing a web server from scratch. By anchoring the course on a single real-world application, we were able to provide depth, instill good programming practices, give insight into systems, and generate excitement.
{"title":"Follow the river and you will find the C","authors":"J. Lee, Michael S. Kester, H. Schulzrinne","doi":"10.1145/1953163.1953285","DOIUrl":"https://doi.org/10.1145/1953163.1953285","url":null,"abstract":"We present a one-semester transition course intended to bridge the gap between a Java-based introductory sequence and advanced systems courses. We chose to structure our course as a series of lab assignments that, while independent, are also milestones in a single main project, writing a web server from scratch. By anchoring the course on a single real-world application, we were able to provide depth, instill good programming practices, give insight into systems, and generate excitement.","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"43 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":"115287077","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}
{"title":"Session details: Teaching and studying novice programmers","authors":"Mark Johnson","doi":"10.1145/3258474","DOIUrl":"https://doi.org/10.1145/3258474","url":null,"abstract":"","PeriodicalId":137934,"journal":{"name":"Proceedings of the 42nd ACM technical symposium on Computer science education","volume":"7 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":"115976903","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}