- Sponsor:
- sigcse
No abstract available.
Getting started with computer ethics
Computer professionals face dilemmas which demand both technical knowledge and an understanding of ethical principles and skills, but how to best teach these principles and necessary skills to students? ACM's Curriculum '91 and the problems inherent in ...
Teaching ethical and social issues in CS1 and CS2
The discussion of whether ethical and social issues of computing should be explored in undergraduate computer science education has resulted in most academic institutions and educators agreeing that they are important topics that must be included. ...
Teaching social and ethical issues in the literacy course
A growing number of colleges and universities educate their computer science majors in social and ethical issues relating to computers. This article presents the case for incorporating consciousness of social and ethical issues of computing into the ...
A collection of tools for making automata theory and formal languages come alive
- Susan H. Rodger,
- Anna O. Bilska,
- Kenneth H. Leider,
- Magdalena Procopiuc,
- Octavian Procopiuc,
- Jason R. Salemme,
- Edwin Tsang
We present a collection of new and enhanced tools for experimenting with concepts in formal languages and automata theory. New tools, written in Java, include JFLAP for creating and simulating finite automata, pushdown automata and Turing machines; P&...
A visual development environment for multi-lingual curricula
Although a computer science curriculum may use a single language as its "core" language, many curricula require students to learn and use multiple languages for course or practicum work. Students benefit from the exposure to other languages and other ...
Using student-built algorithm animations as learning aids
The typical application of algorithm animation to assist instruction involves students viewing already prepared animations. An alternative strategy is to have the students themselves construct animations of algorithms. The Samba algorithm animation tool ...
Exploring Martian planetary images: C++ exercises for CS1
We present a series of programming exercises based on photographic images of Mars collected by the NASA Viking Orbiter. Even without the news that there may once have been life on Mars [1], we feel that these exercises provide an exciting platform for ...
Function objects, function templates, and passage by behavior in C++
Passing functions and function objects to general purpose routines is a powerful abstraction mechanism that should be taught in freshman computer science. In C++, a "function" can be defined directly by the user or by a library or can be defined ...
Teaching OOP in C++ using an artificial life framework
This paper explores the framework method for teaching object-oriented programming. Specifically, it describes a hierarchy of C++ classes that implement the framework for an Artificial Life simulator. Students learn how to read these classes and extend ...
A practical approach to reinforcing concepts in introductory operating systems
The challenge of including both theory and practical experience to reinforce the concepts of theory in Introductory Operating Systems is discussed. The traditional approaches to answering this challenge are presented. A practical approach that uses ...
CALOS: first results from an experiment in computer-aided learning for operating systems
This paper describes the outcome of an experiment in Computer-Aided Learning (CAL) for Operating Systems using the World-Wide Web (WWW). The purpose of the experiment is to evaluate WWW-based course delivery both in terms of academic performance and in ...
System calls and interrupt vectors in an operating systems course
The introductory operating systems course has a tendency to appear to the student as a disparate collection of topics such as synchronization primitives, process scheduling algorithms, and page replacement policies. We describe a sequence of material to ...
Assessing computer usage patterns in a software development course
This paper reports the results of an exploratory study that measures computer usage patterns in a second-year, programming-intensive computer science course. In the study, we augmented the compilation process to unobtrusively mail a copy of the compiler ...
Examining student learning of computer science
Student examination performance in a third-year module, "Communications, Networks and Distributed Systems" (CNDS), is analyzed in terms of different responses to questions which required qualitative versus quantitative answers. This is matched to the ...
The evolution of standards for accrediting computer science teacher preparation programs
In 1992, the National Council for the Accreditation of Teacher Education (NCATE) adopted guidelines for computer science education teacher preparation programs. The endorsement signaled the emergence of computer science education as a distinct ...
A model C++ tree iterator class for binary search trees
In object-oriented design, the concept of a container class that holds a collection of similar objects is fundamental. To use a container class most effectively, it is helpful to define one or more associated iterator classes that can return the objects ...
Testing object-oriented programs: making it simple
One of the major difficulties facing anyone trying to teach the first programming course is how to encourage students to thoroughly test their programs. We would argue that the main reasons for this are the lack of suitable tools for testing and the ...
The object-ownership model: a case study for inheritance and operator overloading
Any comprehensive course on object-oriented programming must cover the topics of inheritance and overloading. In addition, in view of the relatively large size of some objects, one should also cover the efficiency of parameter passing techniques. By ...
Inter-class synergy by design
Most often curricula are defined in university catalogs according to course prerequisite structures. Formal linkages between individual courses are typically first-order relationships based on prerequisite knowledge or discipline maturity. This paper ...
Introductory computer science for general education: laboratories, textbooks, and the Internet
Many colleges and universities are experiencing the need to offer an introductory computer science course that meets some but perhaps not all the guidelines suggested for a CS 1 course. This course frequently meets institutional general education ...
Computing, diversity and community: fostering the computing culture
How do we attract and retain women in mathematics and science and specifically in computing? Women drop out of every bend of the pipeline and thus lose the opportunity to seek good, appealing and high-paying jobs. Funded by an eight-semester long ...
Undergraduate women in computer science: experience, motivation and culture
For the past year, we have been studying the experiences of undergraduate women studying computer science at Carnegie Mellon University, with a specific eye toward understanding the influences and processes whereby they attach themselves to or detach ...
Women in introductory computer science: experience at Victoria University of Wellington
This paper documents efforts that the department has made to support women students between 1991 and the 1996. Our major goal has been to reduce the high withdrawal rate of women students in our entry level course in computer science. We describe the ...
Classroom projects on database connectivity and the Web
Most undergraduate curriculums in CS include at least a one semester study of data base management systems. In this paper, we take a closer look at a DBMS course we have offered recently and elaborate on a world wide web based database project in this ...
Integrating the practical use of a database product into a theoretical curriculum
Integrating the practical use of a database product into the theoretical curriculum of a database management course is a challenge. The approach described minimizes the amount of class time that is allocated to teaching students the use of a database ...
WinRDBI: a Windows-based relational database educational tool
RDBI is an educational tool that provides students with the capability to test their understanding of the formal relational query languages (relational algebra, domain relational calculus and tuple relational calculus) and the industry standard query ...
Avoiding object misconceptions
This paper identifies and describes a number of misconceptions observed in students learning about object technology. It identifies simple, concrete, measures course designers and teachers can take to avoid these misconceptions arising. The context for ...
Object-oriented design and programming: an Eiffel, C++, and Java course for C programmers
An undergraduate junior or senior level course in object-oriented design and programming is described. The course assumes familiarity with ANSI C and with data structures. The course is a popular elective among upper division students. The small, ...
Teaching with object oriented libraries
This paper describes a new course centered around the use of large object-oriented libraries and the distinct skills required to use them effectively. The paper describes the needs which led to the formation of the new course, an outline of the course's ...
Index Terms
- Proceedings of the twenty-eighth SIGCSE technical symposium on Computer science education
Recommendations
Acceptance Rates
Year | Submitted | Accepted | Rate |
---|---|---|---|
SIGCSE '19 | 526 | 169 | 32% |
SIGCSE '18 | 459 | 161 | 35% |
SIGCSE '17 | 348 | 105 | 30% |
SIGCSE '16 | 297 | 105 | 35% |
SIGCSE '15 | 289 | 105 | 36% |
SIGCSE '14 | 274 | 108 | 39% |
SIGCSE '13 | 293 | 111 | 38% |
SIGCSE '12 | 289 | 100 | 35% |
SIGCSE '11 | 315 | 107 | 34% |
SIGCSE '02 | 234 | 73 | 31% |
SIGCSE '01 | 225 | 78 | 35% |
SIGCSE '00 | 220 | 78 | 35% |
SIGCSE '99 | 190 | 70 | 37% |
SIGCSE '98 | 201 | 72 | 36% |
SIGCSE '97 | 177 | 75 | 42% |
SIGCSE '96 | 205 | 78 | 38% |
Overall | 4,542 | 1,595 | 35% |