bluuebunny/crossref_metadata_2025_split huggingface dataset:
Documentation standards for beginning students
Authors: Brewer Richard K. 
Published: July 2004

The importance of writing programs that are readable has finally gained preeminence in the struggle with such competing and contradictory goals as “cuteness” and “optimization” of code. As a result, a much greater stress on documentation standards is found in computer science education these days. Industry and government standards for documentation are being more widely adhered to and certain points of agreement have emerged. Some excellent books have been written that cover the subject (Van Tassel, 1974; Ledgard, 1975; Kernighan & Plauger, 1974); however it is safe to say that both the exhaustive treatment of the subject in such publications and the extremely high standards proposed probably preclude wholesale adoption by instructors of beginning level programming courses. What is proposed here is a set of common sense, scaled down documentation standards for the student in a first programming course in, say, FORTRAN, PL/I, ALGOL, or Basic.
The following represents an amalgam of documentation requirements achieved as a result of teaching introductory programming to college students for nine years. The actual sources have been the literature, colleagues, and last but not least, experience. They are not intended to represent an “only” or “best” approach; the author has recently encountered other efforts in this direction that must surely be as reasonable and effective. It does represent one educator's approach; it is sufficiently scaled down so that one might reasonably expect to use it as a standard for beginning students; and it may be most useful as a contributor of components to be integrated into a more effective set of standards.
The basics of documentation and readable programming include comments, meaningful variable names, labelled output, flowcharts, and clear program flow. The major components of and basic rules for each of these categories will be presented in the context of the needs and limitations of the beginning student.
Does a computer have sexual preferences?
Authors: Mazlack Lawrence J. 
Published: July 2004

At the University of Guelph there has been a single significant introductory computer science course. Approximately 50% of the University's full time undergraduate students have taken this course during their academic career. Sectioning and enrollment has generally been done without regard to academic program or semester in school.
An examination of the past two years' results was performed utilizing the records of 1,350 students. Negligible correlations were found between a student's sex, academic program or semester in school when posed against the students' grades (both final and by grade component). All three results are contrary to the normal implicit assumptions regarding competitiveness between sexes, academic programs and student experience in a computer science course.
Teaching teachers about computers
Authors: Marsh Barbara 
Published: July 2004

I believe computers will continue to expand their areas of application, and so am forced to the conclusion that school curricula will have to deal with them. And if computer curricula are to be introduced into the schools, teacher training institutions must prepare teachers to teach about computers.
The context I choose is education itself. "Education" is of course rather a broad term; computer uses in education are many and varied. Some of these applications are similar enough to those in other areas that some very general principles of computer use will automatically be raised. Others are quite unique, and raise specific questions which teachers will have to deal with in their own professional lives, so that the study of computers can be seen to be very relevant to being a teacher. By teaching about computers in this context instead of more abstractly or generally, and by drawing attention constantly to the educational implications of computer uses, I hope that the teachers who are my students will in turn pass on to their own students the habit of attending to the social implications of what is done by computers.
The structure and use of a test generating system designed to facilitate individually paced instruction
Authors: Palay Roger M. 
Published: July 2004

The structure and use of a test-generating system having the following parameters is described.
1. Each test is a ten item multiple choice instrument where each item has five (5) alternatives.
2. Each test is generated from a relatively small file (most often less than 150 card images).
3. Although the file contains only five (5) disjoint tests, over nine million different tests (each with its own set of correct answers) can be generated from it.
4. The correct answers to each test are stored directly on the test (in coded form).
5. Test responses are machine correctable and such correcting need not be done on the system that generated the test.
6. The reliability of different forms of tests generated from one file is theoretically high (no statistical evidence is available to support a claim of high reliability).
7. The grading program produces a total score as well as giving the correct answers for all items on that test.
Learning mathematics with recursive computer programs
Authors: Peelle Howard A. 
Published: July 2004

Recursion is a powerful idea*—with correspondingly powerful implications for learning and teaching mathematics. Computer scientists have previously pointed out that the use of recursion often permits more lucid and concise descriptions of algorithms [1]; mathematicians know that recursion is a fundamental concept upon which entire systems of mathematics can be built [11]; and, the theory of recursive functions is now developing into an area of mathematics whose importance has been compared with that of geometry and algebra [3].
The purposes of this paper are to illuminate the fundamentals of recursion; to illustrate several recursive computer programs which provide perspicuous representations of certain mathematical procedures; and to invite students and teachers of mathematics to reach greater understandings by trying them.
Computer graphics as an aid to teaching geometric transformations
Authors: McAdams Joseph K. , DeKock Arlan R. 
Published: July 2004

During the past several years, there has been much discussion and controversy over what should be taught in high school mathematics, in general, and in high school geometry, in particular. Numerous mathematicians have encouraged the teaching of transformations as part of the standard high school mathematics curriculum[l-4,6-9]. The results of a recent survey of high school teachers of mathematics indicate that 19% have taught geometric transformations, 26% feel adequately prepared to teach such a topic, and 50% would like to teach the topic if materials were available for the average college prep student[5].
The topic of transformations is important because transformations are a unifying factor in algebra and geometry. Algebra and geometry are essentially the same material taught from different approaches. In particular, the abstract algebraic concept of a group can be conveyed in purely geometric terms by groups of transformations.
Becun the educational computer user's network at battelle
Authors: Beerman Thomas H. , Jonesku Gregory S. 
Published: July 2004

The Educational Computer User's Network at Battelle represents a unique application of the joint-computer-center concept. The program is unique in two respects. First, it is a cooperative effort between a group of Ohio colleges, secondary schools, and a large research-oriented organization. Second, the entire program has proceeded without any federal or other outside financial support. Both Battelle and the schools have participated by utilizing funds available within their own operating budgets.
The purpose of this paper is to describe the program and some of its results from the viewpoint of Battelle's Computer Center.
Modeling the student and the discipline in CAI drill and practice
Authors: Lorton Paul , Killam Rosemary N. 
Published: July 2004

Models built into computer assisted instructional courses have several advantages. They make the underlying theoretical assumptions more explicit and, at the same time, give a clearer direction to the actual development of the CAI program. The purpose of this discussion is to present some of the areas in which models have had an implicit or explicit impact and to indicate how our current work is focused by these efforts.
The main purpose of the modeling discussed here is to provide better, more effective instruction (models of the learner) with substantially generated curriculum (models of the discipline). The drill and practice context is emphasized because that is one with a history of models in both areas and one which has demonstrated potential.
An interactive program advising system
Authors: Gillett Will 
Published: July 2004

This paper describes components of an Interactive Program Advising System (IPAS) for beginning programming students. The system, being unaware of the algorithm being implemented by the student, is unable to direct the student toward writing a correct program. It instead comments on the programming constructs the student has used in the specific implementing language—in this case FORTRAN.
Beginning programming students often write poorly structured programs (especially in a non-block-structured language like FORTRAN) with constructs which, while legal, indicate that the student doesn't really understand the operation being performed. Data is currently being collected on “conceptual errors” commonly made by beginning students. This paper describes some of these “errors” and what comments can be presented to the student to help him understand and correct his own “errors.” A subsequent paper will present statistics on frequency of errors and plausible student logic which would produce the errors.
Panel discussion
Authors: Bar Avron , Brown John Seely , Gentner Donald , Goldstein Ira , Miller Mark , Fletcher J. D. 
Published: July 2004

An important area of computer-assisted instruction is the development of intelligent instructional systems. These systems can be distinguished from more conventional approaches by the automation of instructional interaction and choice of strategy. They promise both to reduce the costs of instructional materials preparation and to increase the adaptability and individualization of the instruction delivered. An appropriately intelligent instructional system should create a reactive environment in which a student can test his own hypotheses concerning the subject matter, probe for information at different levels of difficulty and abstraction, acquire wide experience in minimum time, obtain instructional material generated for his unique abilities and needs, receive instructional aids for partially completed solutions, and receive critiques for completed problem solutions.
The panel is composed of investigators who are actively engaged in the design, development, and evaluation of intelligent instructional systems. Each member of the panel will briefly outline an aspect of his current work that illustrates a problem or issue appropriate for general discussion. An attempt will be made to assess the state-of-the-art of intelligent instructional systems and to indicate reasonable next steps for their development. Attendees are encouraged to arrive bearing questions, comments, and information.
Computer science and minority colleges & universities
Authors: Lewis Jesse 
Published: July 2004

Jackson State University is the lead institution in a Cooperative Regional Educational Computing Network. The network is funded by the National Science Foundation. When it began operating in January, 1974, it involved eleven (11) other participating institutions. Now there are seventeen (17).
The purpose of the network is to provide appropriate equipment, with an accompanying massive educational effort, so as to allow each of the participating institutions to become more aware of the academic implications of computers. The ultimate goal is to profoundly affect basic curricula.
The results have been positive. Some faculty at participating institutions have reconstructed course content so as to include the use of the computer at appropriate points in their courses. More positive is the fact that a large number of students from disadvantaged educational and cultural backgrounds now have access to interactive computing.
Self-assessment for the computing professional
Authors: Frederick Terry J. 
Published: July 2004

Self-assessment is a procedure based on questions and answers covering knowledge in technical areas which allows an individual to determine his own activities for the purpose of keeping up with progress in his field. It is assumed that the individual wishes to continue active learning and that he wants to identify his deficiencies (usually in a manner where no one else knows of them).
A major premise regarding self-assessment is that it should primarily be an educational experience for the participant.
An alternative to using the professional testing agency approach for developing and administering self-assessment procedures for the computing field is proposed.
Computer science by TV
Authors: Eccles William J. , Gordon Brian G. 
Published: July 2004

Our use of television to teach the first computer science course for computer science majors is an attempt to make sure that the students get the right education. In our case it is not an attempt to enable one instructor to handle a large number of students but rather to handle small groups of students spread throughout the state.
As a result of some shortage of computer science faculty, teaching beginners is often considered of lesser importance than other duties. For example, at one college in our state, an instructor with a little programming experience was hired to teach the beginners in computer science. This instructor felt he was well-enough equipped to handle the course. He covered the entire text and taught two languages, Fortran and PL/I. Our experience shows we can't cover two-thirds of that text, and then only in one language.
Ours is the first computer science course which our majors take. It presumes no programming experience. It has two goals, to introduce the student to the fundamentals of computer science through a study of algorithms and programming, and to start the student well into PL/I. The course is taught as a one-semester four-credit course which meets five times per week.
We made half-hour video tapes under excellent production conditions to cover the material of the course.
Topological sorting as a tool in curriculum planning
Authors: Meinke John G. , Bauer Charles R. 
Published: July 2004

Topological sorting provides a partial ordering for a group of data items for which a partial linear ordering exists.
Our use of the topological sorting algorithm has been in the logical organization of curriculum content. Curriculum content can vary from organizing a forty minute lecture to planning a four year sequence of courses. Application of topological sorting to the curriculum content results in a logical organization of the concepts, which may or may not be unique. Users of TOPSORT claim a major time savings in the long run. Backtracking to cover prerequisite concepts in teaching is reduced.
Use of structured flowcharts in the undergraduate Computer Science curriculum
Authors: Haskell R. E. , Boddy D. E. , Jackson G. A. 
Published: July 2004

Over the last four years a new Computer Science major program has been introduced into the curriculum of the School of Engineering at Oakland University. During this period computer science educators throughout the country have debated the best way to introduce structured programming into the curriculum. There is now a widespread belief that beginning FORTRAN courses cannot be taught using structured programming in a form that is palatable to freshmen students without the aid of a structured FORTRAN preprocessor. Our experience in teaching structured programming using FORTRAN to large numbers of freshmen students has indicated that this widespread belief is false.
We will illustrate the use of structured flowcharts with FORTRAN in Section 2 by showing one of the actual programming assignments that was given to our freshman introductory computer course this term. The same structured flowcharting techniques are used throughout the curriculum. An example that uses ALGOL and is taken from our junior level data structures class is given in Section 3. The use of the structured flowcharts forces all programs to be well-structured and encourages a top-down approach to programming. It is a very useful vehicle for describing any language-independent structured algorithm. An example of using structured flowcharts to describe a simple precedence parser in a senior course on compilers is given in Section 4.
A report on the curriculum recommendations of the ACM sub-committee for community and junior college curriculum
Authors: Smith Bobby , Whiteside Eric , Leidlich Charles , Little Joyce Currie , Austing Richard 
Published: July 2004

Final recommendations for the two-year college curriculum to educate computer programmers for applications programming in a general setting of commerce, industry, and government service will be presented. The attached draft of the report was that used by the group prior to the May 27-28 Workshop, during which reactions from industry and professional society representatives were obtained.
After a summary of the content of the report is given by the chairman of the ad hoc sub-committee, comments will be heard from panel participants. Afterwards, a brief critique will be given by a discussion leader, followed by discussion with the audience.
Copies of the completed report should be available during the panel session.
Computer science
Authors: Nanney T. Ray 
Published: July 2004

There is a wide divergence of opinion as to the appropriate content for an introductory computer science course. Approaches to teaching the subject range from “computer appreciation” presentations to rigorous courses for computer science majors. This paper presents the thesis that computer science has reached a level of maturity which allows it to be presented in a stimulating and intellectually honest manner to liberal arts students regardless of their majors, and that such a course is an important, almost essential, part of the curriculum for such students. A rationale for this view will be presented, and a course conforming to the rationale will be described.
In many liberal arts institutions, including mine, any subject which may be related to technology is regarded with suspicion; and zealous efforts are made to avoid contamination of the curriculum with unsuitable courses having a technological base. Because the rationale for the course seems to satisfy my colleagues in the more humanistic subjects, it is presented in some detail here for its possible value in other institutions.
An integrated small computer laboratory using a central disk storage facility
Authors: Moshell J. M. , Hughes C. E. , Aiken R. M. 
Published: July 2004

One of the most important developments in the 70's has been the introduction of microcomputers. The impact of these systems presents a major challenge for computer educators today and in the foreseeable future.
Though educators have tried to adapt to this rapid change in technology, only recently have articles appeared describing experiences in integrating micro-systems in Computer Science curricula (5,6). Though each paper covers different topics in varying degrees of depth, almost all the authors agree that having a micro-lab facility provides students with exposure to concepts and problems such as:
- actual hardware
- computer operation
- operating systems
- backup procedures
- time dependent coding
- program size problems
- inter-computer communications
- scheduling
- maintenance
- computer management.
These are the types of problems students will encounter after graduation and this laboratory provides them with actual experience that previously was not available.
A workable interpreter project for a “Structured Programming” course
Authors: Levine David R. 
Published: July 2004

Construction of a programming language interpreter has many beneficial aspects as a project for an intermediate level course. It provides a taste of the compilation process and an understanding of many issues involved in the structure and analysis of programming languages, all in a framework of an interesting, moderately large programming project. Over the past several years I have developed a workable interpreter, demanding a month or less, which successfully exhibits many important concepts. I hope that the presentation of this specific formulation, in detail, will prove of value to others.
This project provides an interpreter for a simple, statement-oriented language.
A project approach to structure and correctness in Pitt's second computer science course
Authors: Yelowitz Lawrence 
Published: July 2004

The introduction of software methodological issues, including correctness and structure, into the undergraduate curriculum is aided by the availability of software projects which are not overwhelming, but nonetheless, are sufficiently complex to warrant a disciplined approach.
A project covering a “commercial” application is described here. The use and instantiation of abstract program schemas to a variety of contexts is illustrated, as is a sequence of incremental additions which preserve correctness at each stage.
Fuller details and a more formal description of this project, as well as of a project implementing a propositional logic theorem prover, are found in [1]. As a first step in appreciating the general applicability of these software methodological issues, students should realize that these methodologies were used in fundamental ways in developing both projects.
Simulation as a vehicle for project experience
Authors: Powell J. D. , Lee M. J. 
Published: July 2004

One of the criticisms directed at many computer science programs is the lack of involvement of the students in “large scale, real-life problems”. Panel discussions between computer science educators and computing practitioners frequently devote a great deal of time to this topic. The practitioners charge that students are frequently presented with well-defined problems that illustrate specific computing concepts. While these problems are important, they do not prepare students for the ill-defined problems they will typically face in a usual job situation. Since a large portion of the graduates from our degree programs move directly into the business and industrial environments, we should seriously consider this criticism.
Separate project courses have been described by Khailand and Saxon [2] and by Crenshaw [1]. In these courses, a series of projects are presented to the students. Depending on the size of the class, one or more of the projects are chosen and the class is divided into teams to work on the projects. Classroom time is devoted to organizational structure, skills, and techniques that are important to successful completion of a project satisfying the standards and requirements of the project assignment. Most of the work is performed within the individual teams. The instructor meets periodically with the students to review and monitor their progress. At the end of the course, each team is required to make a formal presentation of its results.