Sigcse '18


Book Description

SIGCSE '18: The 49th ACM Technical Symposium on Computing Science Education Feb 21, 2018-Feb 24, 2018 Baltimore, USA. You can view more information about this proceeding and all of ACM�s other published conference proceedings from the ACM Digital Library: http://www.acm.org/dl.




The Cambridge Handbook of Computing Education Research


Book Description

This Handbook describes the extent and shape of computing education research today. Over fifty leading researchers from academia and industry (including Google and Microsoft) have contributed chapters that together define and expand the evidence base. The foundational chapters set the field in context, articulate expertise from key disciplines, and form a practical guide for new researchers. They address what can be learned empirically, methodologically and theoretically from each area. The topic chapters explore issues that are of current interest, why they matter, and what is already known. They include discussion of motivational context, implications for practice, and open questions which might suggest future research. The authors provide an authoritative introduction to the field which is essential reading for policy makers, as well as both new and established researchers.







Computer Science Education Research


Book Description

This book provides an overview of how to approach computer science education research from a pragmatic perspective. It represents the diversity of traditions and approaches inherent in this interdisciplinary area, while also providing a structure within which to make sense of that diversity. It provides multiple 'entry points'- to literature, to methods, to topics Part One, 'The Field and the Endeavor', frames the nature and conduct of research in computer science education. Part Two, 'Perspectives and Approaches', provides a number of grounded chapters on particular topics or themes, written by experts in each domain. These chapters cover the following topics: * design * novice misconceptions * programming environments for novices * algorithm visualisation * a schema theory view on learning to program * critical theory as a theoretical approach to computer science education research Juxtaposed and taken together, these chapters indicate just how varied the perspectives and research approaches can be. These chapters, too, act as entry points, with illustrations drawn from published work.




Computer Science Education


Book Description

Drawing together the most up-to-date research from experts all across the world, the second edition of Computer Science Education offers the most up-to-date coverage available on this developing subject, ideal for building confidence of new pre-service and in-service educators teaching a new discipline. It provides an international overview of key concepts, pedagogical approaches and assessment practices. Highlights of the second edition include: - New sections on machine learning and data-driven (epistemic) programming - A new focus on equity and inclusion in computer science education - Chapters updated throughout, including a revised chapter on relating ethical and societal aspects to knowledge-rich aspects of computer science education - A new set of chapters on the learning of programming, including design, pedagogy and misconceptions - A chapter on the way we use language in the computer science classroom. The book is structured to support the reader with chapter outlines, synopses and key points. Explanations of key concepts, real-life examples and reflective points keep the theory grounded in classroom practice. The book is accompanied by a companion website, including online summaries for each chapter, 3-minute video summaries by each author and an archived chapter on taxonomies and competencies from the first edition.




A Practical Introduction to Data Structures and Algorithm Analysis


Book Description

This practical text contains fairly "traditional" coverage of data structures with a clear and complete use of algorithm analysis, and some emphasis on file processing techniques as relevant to modern programmers. It fully integrates OO programming with these topics, as part of the detailed presentation of OO programming itself.Chapter topics include lists, stacks, and queues; binary and general trees; graphs; file processing and external sorting; searching; indexing; and limits to computation.For programmers who need a good reference on data structures.




Unlocking the Clubhouse


Book Description

Understanding and overcoming the gender gap in computer science education. The information technology revolution is transforming almost every aspect of society, but girls and women are largely out of the loop. Although women surf the Web in equal numbers to men and make a majority of online purchases, few are involved in the design and creation of new technology. It is mostly men whose perspectives and priorities inform the development of computing innovations and who reap the lion's share of the financial rewards. As only a small fraction of high school and college computer science students are female, the field is likely to remain a "male clubhouse," absent major changes. In Unlocking the Clubhouse, social scientist Jane Margolis and computer scientist and educator Allan Fisher examine the many influences contributing to the gender gap in computing. The book is based on interviews with more than 100 computer science students of both sexes from Carnegie Mellon University, a major center of computer science research, over a period of four years, as well as classroom observations and conversations with hundreds of college and high school faculty. The interviews capture the dynamic details of the female computing experience, from the family computer kept in a brother's bedroom to women's feelings of alienation in college computing classes. The authors investigate the familial, educational, and institutional origins of the computing gender gap. They also describe educational reforms that have made a dramatic difference at Carnegie Mellon—where the percentage of women entering the School of Computer Science rose from 7% in 1995 to 42% in 2000—and at high schools around the country.




Dive Into Systems


Book Description

Dive into Systems is a vivid introduction to computer organization, architecture, and operating systems that is already being used as a classroom textbook at more than 25 universities. This textbook is a crash course in the major hardware and software components of a modern computer system. Designed for use in a wide range of introductory-level computer science classes, it guides readers through the vertical slice of a computer so they can develop an understanding of the machine at various layers of abstraction. Early chapters begin with the basics of the C programming language often used in systems programming. Other topics explore the architecture of modern computers, the inner workings of operating systems, and the assembly languages that translate human-readable instructions into a binary representation that the computer understands. Later chapters explain how to optimize code for various architectures, how to implement parallel computing with shared memory, and how memory management works in multi-core CPUs. Accessible and easy to follow, the book uses images and hands-on exercise to break down complicated topics, including code examples that can be modified and executed.




The Science of Computing


Book Description

The identity of computing has been fiercely debated throughout its short history. Why is it still so hard to define computing as an academic discipline? Is computing a scientific, mathematical, or engineering discipline? By describing the mathematical, engineering, and scientific traditions of computing, The Science of Computing: Shaping a Discipline presents a rich picture of computing from the viewpoints of the field’s champions. The book helps readers understand the debates about computing as a discipline. It explains the context of computing’s central debates and portrays a broad perspective of the discipline. The book first looks at computing as a formal, theoretical discipline that is in many ways similar to mathematics, yet different in crucial ways. It traces a number of discussions about the theoretical nature of computing from the field’s intellectual origins in mathematical logic to modern views of the role of theory in computing. The book then explores the debates about computing as an engineering discipline, from the central technical innovations to the birth of the modern technical paradigm of computing to computing’s arrival as a new technical profession to software engineering gradually becoming an academic discipline. It presents arguments for and against the view of computing as engineering within the context of software production and analyzes the clash between the theoretical and practical mindsets. The book concludes with the view of computing as a science in its own right—not just as a tool for other sciences. It covers the early identity debates of computing, various views of computing as a science, and some famous characterizations of the discipline. It also addresses the experimental computer science debate, the view of computing as a natural science, and the algorithmization of sciences.