{"title":"A joint first year program for computer science and information systems","authors":"J. L. Harrington, Helen M. Hayes","doi":"10.1145/199691.199750","DOIUrl":"https://doi.org/10.1145/199691.199750","url":null,"abstract":"The Marist College Division of Computer Science and Mathematics offers undergraduate degrees in both Computer Science (CS) and Information Systems (IS). Prior to the fall of 1992, the two programs shared only two computing courses and one math course. Today, however, students who enter Marist with either major take the same courses during their fkeshman year. This common foundation for both CS and IS has provided a better background for students, enhanced their enthusiasm for their chosen fields, increased the retention of students in the major, and helped ensure that students are pursuing the major for which they are best suited. This paper looks at the two majors before the initiation of the joint first yea program and examines the problems with the course sequences identified by faculty and students, It then looks at how the joint first year program, through the restructuring of the course sequence and the introduction of a freshman lecture series, has solved some of those problems.","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"51 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115718572","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":"Centralized mindset: a student problem with object-oriented programming","authors":"M. Guzdial","doi":"10.1145/199688.199772","DOIUrl":"https://doi.org/10.1145/199688.199772","url":null,"abstract":"● There are strong arguments to believe that objectoriented programming is easier to learn and use in creating more correct programs Kosson & Alpert, 1990]. ● Students do learn object-oriented programming environments, though the depth of that learning has been questioned and few problems that students encounter have been identified Eome & GirardoL 1991 ;Fenton & Beck, 1989;Nielsen, Frehr, et al., 1991;Pugh, LaLonde, et ai., 1987]. “ One of these problems is that programmers have difficulty learning object-oriented programming if they have learned another paradigm previously CDetienne, 1990]. . A specific problem that students encounter is creating collaborative objects – students have diftlcnlty creating and understanding connections between objects [Carroll, Rosson, et ai., 1993].","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116437987","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}
Christopher H. Nevison, J. Kmoch, R. E. Noonan, T. Corica, Sarah Fix, David G. Kay
{"title":"Changes in the advanced placement computer science course: case studies and C++ (panel)","authors":"Christopher H. Nevison, J. Kmoch, R. E. Noonan, T. Corica, Sarah Fix, David G. Kay","doi":"10.1145/199691.199887","DOIUrl":"https://doi.org/10.1145/199691.199887","url":null,"abstract":"Case studies provide examples of good style, the use of language constructs, fundamental data structures, algorithms and applications. Moreover, case studies provide an economical way to deal with large programs. Large programs give the student practice in the management of complexity and motivate the use of certain programming practices, such as procedural decomposition, intermodule communication through parameter passing, data abstraction, and selection of data structures tailored to the needs of the problem.","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122666143","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":"Object-oriented simulation of computer architectures using C++","authors":"R. J. Reid","doi":"10.1145/199688.199702","DOIUrl":"https://doi.org/10.1145/199688.199702","url":null,"abstract":"Object-oriented languages such as C++ allow class definitions which eliminate the need for writing special-purpose simulators in many cases. Simulating digital logic components and computer architectures is one case where the simulation model can be effectively and conveniently expressed in the programming language itself. A class library supporting: schematic organization, multi-level digital-signal representation, and implementations of a modest set of component primitives has been developed. This library supports two forms of hierarchical arrangements; first, the digital signals themselves can be expressed as vectors (as for a bus), either directly or by composition, and second, the digital components can be arranged hierarchically as modules, and the modules can be used in an identical manner in which the primitives are used. The library code described here is available from the author.","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"87 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121896627","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}
J. Zachary, Christopher R. Johnson, E. Eide, Kenneth W. Parker
{"title":"An entry-level course in computational engineering and science","authors":"J. Zachary, Christopher R. Johnson, E. Eide, Kenneth W. Parker","doi":"10.1145/199688.199786","DOIUrl":"https://doi.org/10.1145/199688.199786","url":null,"abstract":"In conventional science and engineering degree programs, computation is commonly treated-as a narrow technical tool to be studied and applied in isolation from the traditional topics of the discipline. Students are typically required to take a programming course (usually in Fortran, C, or Pascal) to learn how to program, and perhaps a numerical analysis course (covering numerical integration, root finding, and the like) to learn ways to apply their programming skills. However, many students then go through the rest of their degree programs without ever using computation in any significant way. This approach ignores the fact that computation has evolved into an essential way of illuminating scientific and engineering principles. Researchers now choose among the theoretical, experimental, and computational approaches to studying scientific phenomena, It is becoming increasingly clear that computation should be exploited in science and engineering education for its descriptive and analytical powers [1–3]. We believe that it is as unreasonable to teach science and engineering without computing as it would be to do so without calculus and differential equations. To encourage the integration of computation into the science and engineering curricula, we have designed and taught an introductory course in computing expressly for science and engineering students. Our goal wss to create a course to satisfy the standard programming requirement while preparing students to immediately exploit the broad power of modern computing in their science and engineering courses. Our course has at least four distinguishing features:","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"91 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122214984","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":"Modula-2 versus C++ as a first programming language—some empirical results","authors":"M. Hitz, M. Hudec","doi":"10.1145/199688.199838","DOIUrl":"https://doi.org/10.1145/199688.199838","url":null,"abstract":"The success of an experiment of using C++ as a first programming language for students of a specific type of computer science is presented. The paper motivates the shift from Modula-2 to C++ in the curriculum, shortly describes the course and discusses the statistical evaluation of the results of the last Modula-2 course and the first C++ course, respectively. The main findings of the study are the fact that in contrast to most expectations, the shift from a typical “educational” language to a much “dirtier” language had no significant effect to the performance of the students taking the course.","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126267923","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":"Youngster: a simplified introduction to computing: removing the details so that a child may program","authors":"Scott Studer, James Taylor, K. Macie","doi":"10.1145/199691.199742","DOIUrl":"https://doi.org/10.1145/199691.199742","url":null,"abstract":"One of the more difficult portions of learning to program is memorizing and understanding the syntactic and semantic rules associated with a language. This paper discusses how to simplify this task as well as presents a case study of a simplified implementation to include multiple variable types successfully tested on first grade students.","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"57 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126282465","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":"Organizing a team for the ACM programming contest (abstract)","authors":"D. Bagert, B. Owens","doi":"10.1145/199691.199901","DOIUrl":"https://doi.org/10.1145/199691.199901","url":null,"abstract":"Purpose: Participation in the ACM International Collegiate Programming Contest has steadily grown over the past several years, to the point where nearly 600 teams from all over the world annually enter the sixteen regional competitions. How institutions prepare teams for the regional contests vary flom school to school; only in the last few years have universities started to formally exchange information concerning their organizational methods. This tutorial discusses how it is done at two specific universities.","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"267 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124344028","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":"Achieving a uniform interface for binary tree implementations","authors":"C. Gurwitz","doi":"10.1145/199688.199726","DOIUrl":"https://doi.org/10.1145/199688.199726","url":null,"abstract":"One of the basic principles taught in a data structures course is that an application program should be independent of the implementation of any particular data structure it uses. This policy breaks down when binary trees are introduced, because the interfaces for the various representations of binary trees are not uniform. In particular, implementing a binary tree by using an implicit array generally requires the array itself to be passed as a parameter to any function that manipulates the tree. In this paper we present an approach for defining the implicit array representation of a binary tree. Our definition makes the underlying array transparent to the user. This allows us to describe a uniform interface for a binary tree module that can be used by an application program regardless of the particular implementation of the tree.","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116313587","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":"Latest developments in the “killer robot” computer ethics scenario","authors":"Richard G. Epstein","doi":"10.1145/199688.199746","DOIUrl":"https://doi.org/10.1145/199688.199746","url":null,"abstract":"men this paper was submitted to SIGCSE in August, the “Case of the Killer Robot” was a 100 page computer ethics scenario. Now, in December, it is nearly 200 pages and at least four more articles are planned. The expanded version has broader coverage of software engineering, ethics, professional issues and societal impact of computers. Consequently, the new version greatly expands the scope and intent of the first. I will describe the 100 page version in some detail and the new materials in lesser detail since the original reviewers of this paper did not know of the new materials.]","PeriodicalId":232532,"journal":{"name":"Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1995-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125898062","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}