Understanding Control Flow


Book Description

The control-flow issues presented in this textbook are extremely relevant in modern computer languages and programming styles. In addition to the basic control-flow mechanisms, virtually all new computer languages provide some form of exceptional control flow to support robust programming introduced in this textbook. Also, concurrency capabilities are appearing with increasing frequency in both new and old programming languages, and are covered in this book. Understanding Control Flow: With Concurrent Programming Using μC++ starts with looping, and works through each of the basic control-flow concepts, examining why each is fundamental and where it is useful. Time is spent on each concept according to its level of difficulty. Examples and exercises are also provided in this textbook. New programming methodologies are requiring new forms of control flow, and new programming languages are supporting these methodologies with new control structures, such as the concurrency constructs discussed in this textbook. Most computers now contain multi-threading and multi-cores, while multiple processors and distributed systems are ubiquitous — all of which require advanced programming methodologies to take full advantage of the available parallelism summarized in this textbook. Advance forms of control flow are becoming basic programming skills needed by all programmers, not just graduate students working in the operating systems or database disciplines. This textbook is designed for advanced-level students studying computer science and engineering. Professionals and researchers working in this field, specifically programming and software engineering, will find this book useful as a reference.




Integrated Formal Methods


Book Description

This book constitutes the refereed proceedings of the 14th International Conference on Integrated Formal Methods, IFM 2018, held in Maynooth, Ireland, in September 2018. The 17 full papers and 5 short papers presented together with 3 invited talks were carefully reviewed and selected from 60 submissions. The conference covers a broad spectrum of topics: from language design, to verification and analysis techniques, to supporting tools and their integration into software engineering practice.







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.




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.







Technical Writing and Professional Communication


Book Description

Developed for use by non-native speakers of English enrolled in Technical Writing and Communication courses. Technical Writing and Professional Communication, 2/e, places technical writing in its context, showing students how to consider their purpose and their audience when writing reports, memos, and correspondence. Formerly titled Technical Writing and Professional Communication: A Handbook for Nonnative Speakers, the new edition features a case running throughout seven chapters, dynamically illustrating the writing process. The revision also provides complete coverage of the new computer technologies and the new attention to the intercultural concerns in today's business world.




Guide to Teaching Computer Science


Book Description

This textbook presents both a conceptual framework and detailed implementation guidelines for computer science (CS) teaching. Updated with the latest teaching approaches and trends, and expanded with new learning activities, the content of this new edition is clearly written and structured to be applicable to all levels of CS education and for any teaching organization. Features: provides 110 detailed learning activities; reviews curriculum and cross-curriculum topics in CS; explores the benefits of CS education research; describes strategies for cultivating problem-solving skills, for assessing learning processes, and for dealing with pupils’ misunderstandings; proposes active-learning-based classroom teaching methods, including lab-based teaching; discusses various types of questions that a CS instructor or trainer can use for a range of teaching situations; investigates thoroughly issues of lesson planning and course design; examines the first field teaching experiences gained by CS teachers.




Solving the Equation


Book Description

The book focuses on the underrepresentation of women in engineering and computing and provides practical ideas for educators and employers seeking to foster gender diversity. From new ways of conceptualizing the fields for beginning students to good management practices, the report recommends large and small actions that can add up to real change.