Explore the Applications and Impacts of Computer Science with Computer Science: An Overview (12th Edition) by Glenn Brookshear and Dennis Brylow
Computer Science: An Overview (12th Edition) by Glenn Brookshear and Dennis Brylow
Are you interested in learning about computer science? Do you want to get a comprehensive introduction to the field that covers all the important areas and concepts? Do you want to read a book that is accessible, engaging, and up-to-date? If you answered yes to any of these questions, then you should consider reading Computer Science: An Overview (12th Edition) by Glenn Brookshear and Dennis Brylow.
Computer Science: An Overview (12th Edition) Glenn Brookshear
This book is intended for use in the Introduction to Computer Science course, but it is also suitable for anyone who wants to get a breadth-first overview of computer science. It is written by two experienced authors who have been teaching computer science for decades. Glenn Brookshear is a Professor Emeritus at Marquette University, where he taught courses in programming languages, theory of computation, artificial intelligence, and discrete mathematics. Dennis Brylow is an Associate Professor at Marquette University, where he teaches courses in operating systems, embedded systems, software engineering, and computer organization.
In this article, we will give you a brief overview of the book and its contents, and explain why you should read it if you want to learn more about computer science. We will also provide you with some information on how to access the book and its companion website, where you can find additional resources that enhance your learning experience.
What is computer science?
Before we dive into the book, let's first define what computer science is. Computer science is the scientific and engineering discipline that studies the theory, design, implementation, and application of computation. Computation is the process of transforming information according to well-defined rules and procedures. A computer is a device that can perform computation, and a computer program is a set of instructions that tells a computer what to do.
Computer science is not just about computers, though. It is also about the problems that can be solved by computation, the methods and tools that can be used to create and analyze computation, and the impacts and implications of computation on society and the world. Computer science is a broad and diverse field that encompasses many subfields and branches, each with its own goals, challenges, and techniques.
The history of computer science
Computer science has a long and rich history that spans centuries and cultures. Here are some of the major events and milestones in the development of computer science:
In 1623, Wilhelm Schickard built the first mechanical calculator that could perform addition, subtraction, multiplication, and division.
In 1673, Gottfried Leibniz invented the binary system, which represents numbers using only two symbols: 0 and 1.
In 1801, Joseph-Marie Jacquard invented the Jacquard loom, which used punched cards to control the weaving patterns of fabrics.
In 1822, Charles Babbage designed the Difference Engine, a mechanical device that could calculate polynomial functions.
In 1837, Charles Babbage proposed the Analytical Engine, a general-purpose mechanical computer that could be programmed with punched cards.
In 1843, Ada Lovelace wrote the first algorithm for the Analytical Engine, making her the first computer programmer.
In 1936, Alan Turing published a paper that defined the concept of a Turing machine, an abstract model of computation that can simulate any algorithm.
In 1937, Claude Shannon showed how Boolean algebra and logic gates could be used to design digital circuits.
In 1941, Konrad Zuse built the Z3, the first programmable electromechanical computer.
In 1944, Howard Aiken and IBM built the Harvard Mark I, the first large-scale automatic digital computer in the US.
In 1946, John Mauchly and J. Presper Eckert built the ENIAC, the first electronic general-purpose computer.
In 1948, John von Neumann published a paper that described the stored-program concept, which allows programs to be stored in memory along with data.
In 1950, Alan Turing proposed the Turing test, a criterion for artificial intelligence based on natural language conversation.
In 1951, Grace Hopper developed the first compiler, a program that translates high-level languages into machine code.
In 1957, John Backus and IBM developed FORTRAN, one of the first high-level programming languages.
In 1960, John McCarthy invented LISP, one of the first functional programming languages.
In 1964, John Kemeny and Thomas Kurtz developed BASIC, one of the first programming languages for beginners.
In 1965, Gordon Moore formulated Moore's law, which predicts that the number of transistors on a chip will double every two years.
In 1969, ARPANET was launched as the precursor to the Internet.
In 1971, Ray Tomlinson sent the first email message over a network.
In 1972, Dennis Ritchie created C, one of the most influential programming languages ever.
In 1974,
Some additional sentences are:
In 1974, Vint Cerf and Bob Kahn designed TCP/IP, the standard protocol for data transmission over networks.
In 1975, Bill Gates and Paul Allen founded Microsoft as a software company.
In 1976, Steve Jobs and Steve Wozniak founded Apple as a personal computer company.
In 1980, Tim Berners-Lee invented HTML as a markup language for web pages.
In 1983, Bjarne Stroustrup developed C++, an object-oriented extension of C.
GNU project
One of the most influential and pioneering projects in the history of computer science is the GNU project, which was launched by Richard Stallman in 1983. The goal of the GNU project was to create a free operating system that respects the users' freedom and control over their own computing. Free software means that the users have the four essential freedoms: to run, copy, distribute, study, and modify the software. Stallman also founded the Free Software Foundation (FSF) in 1985 to support and promote the free software movement.
The name GNU is a recursive acronym for "GNU's Not Unix", which reflects the fact that GNU is based on the design of Unix, but is not a derivative or a clone of it. Instead, GNU is an original and independent system that consists of many programs and packages that are specifically released by the GNU project or by other free software developers. Some of the most notable GNU programs are:
GNU Compiler Collection (GCC), a collection of compilers for various programming languages.
GNU Emacs, a powerful and extensible text editor.
GNU Debugger (GDB), a source-level debugger for C, C++, and other languages.
GNU Binutils, a set of tools for manipulating binary files and object code.
GNU Bash, a command-line shell and scripting language.
GNU Coreutils, a set of basic utilities for file management, text processing, and system administration.
GNU GRUB, a boot loader that can load multiple operating systems.
GNU Hurd, a microkernel that serves as the core of the GNU operating system.
The development of GNU made it possible to use a computer without any software that would trample the users' freedom. However, by the early 1990s, GNU was still missing one crucial component: a kernel. A kernel is the program that allocates the machine resources and communicates with the hardware. Without a kernel, GNU could not function as a complete operating system.
Linux kernel
In 1991, a Finnish student named Linus Torvalds started working on a hobby project: a kernel for his personal computer. He was inspired by Minix, a small Unix-like system developed by Andrew Tanenbaum for teaching purposes. Torvalds wanted to create his own system that would be more powerful and flexible than Minix. He wrote his kernel in C and assembly language, and called it Linux.
Torvalds released Linux under the GNU General Public License (GPL), which means that anyone can use, modify, and distribute it freely. He also invited other programmers to join him in developing and improving Linux. Soon, Linux became a collaborative project involving thousands of volunteers from around the world. They contributed code, bug fixes, documentation, suggestions, and feedback to Linux. They also ported Linux to run on different architectures and platforms.
Linux quickly gained popularity and recognition as a reliable and versatile kernel. It could run on various devices, from personal computers to servers to embedded systems. It could also support various features, such as multiprocessing, virtual memory, networking, security, and device drivers. It could also run many programs and applications that were written for Unix or GNU.
GNU/Linux operating system
In 1992, Torvalds decided to use some of the GNU programs to complement his kernel. He replaced some of the programs that he had written himself or borrowed from Minix with the equivalent or better programs from GNU. For example, he used GCC as his compiler, Bash as his shell, and GDB as his debugger. He also used some of the GNU libraries, such as glibc, to link his kernel with other programs. By doing so, he created a complete operating system that consisted of Linux as the kernel and GNU as the user space. This operating system is commonly known as GNU/Linux.
GNU/Linux is one of the most widely used and successful operating systems in the world today. It powers millions of computers and devices across various domains and industries. It runs on servers, desktops, laptops, smartphones, tablets, routers, TVs, cars, and even supercomputers. It is also the basis of many other operating systems and distributions, such as Debian, Ubuntu, Fedora, Red Hat, Android, and Chrome OS. It is also the preferred platform for many developers and programmers, as it offers a rich and diverse set of tools and languages for creating and running software.
The applications and impacts of computer science
Computer science is not only about creating operating systems, though. It is also about the problems that can be solved by computation, the methods and tools that can be used to create and analyze computation, and the impacts and implications of computation on society and the world. Computer science has many applications and impacts in various domains and fields, such as:
Science and engineering: Computer science enables scientists and engineers to model, simulate, analyze, and visualize complex phenomena and systems, such as weather, climate, genetics, physics, chemistry, biology, astronomy, robotics, nanotechnology, and more.
Business and economy: Computer science enables businesses and organizations to manage, process, and optimize large amounts of data, information, and transactions, such as e-commerce, banking, finance, marketing, accounting, logistics, supply chain, and more.
Education and learning: Computer science enables educators and learners to access, create, and share knowledge and resources, such as online courses, e-books, educational games, simulations, interactive media, and more.
Health and medicine: Computer science enables health professionals and patients to diagnose, treat, and prevent diseases and disorders, such as medical imaging, telemedicine, electronic health records, bioinformatics, artificial organs, prosthetics, and more.
Art and entertainment: Computer science enables artists and entertainers to create and enjoy various forms of digital media and content, such as graphics, animation, video, audio, music, games, virtual reality, and more.
Social and personal: Computer science enables people to communicate, collaborate, and connect with each other and with the world, such as email, social networks, blogs, forums, chat, video conferencing, online dating, and more.
Computer science also has many impacts and implications on society and the world, both positive and negative. Some of the positive impacts are:
Computer science empowers people to create and innovate new solutions and opportunities for various problems and challenges.
Computer science enhances productivity and efficiency in various tasks and processes.
Computer science improves quality of life and well-being for many people.
Computer science promotes education and learning for everyone.
Computer science fosters diversity and inclusion in various communities and cultures.
Some of the negative impacts are:
Computer science poses ethical and moral dilemmas and risks for various issues and situations.
Computer science increases dependency and vulnerability on technology and software.
Computer science threatens privacy and security of personal data and information.
Computer science exacerbates inequality and injustice in access to resources and opportunities.
Computer science harms environment and sustainability by consuming energy and generating waste.
Therefore, computer science is not only a technical field, but also a social one. It requires not only skills and knowledge, but also responsibility and awareness. It demands not only creativity and curiosity, but also ethics and values. It involves not only computers, but also people.
Why should you read Computer Science: An Overview (12th Edition)?
If you are interested in learning more about computer science, whether you are a student taking an introductory course, or a reader looking for a general overview, you should consider reading Computer Science: An Overview (12th Edition). This book is one of the best books that can give you a comprehensive introduction to the field that covers all the important areas and concepts. Here are some of the benefits and features of the book that make it worth reading:
Develop a practical, realistic understanding of computer science
The book provides a broad coverage and clear exposition of the dynamic computer science field. It does not focus on any specific language or technology. Instead, it uses a language-independent context to explain the fundamental ideas and principles of computer science. It also uses examples from various applications and domains to illustrate how computer science can be applied to solve real-world problems. The book encourages you to develop a practical, realistic understanding of computer science that can prepare you for future courses or careers in the field.
Fit your course preferences
The book offers more than 1000 questions and exercises, chapter review problems, and social issues questions to help you apply and reinforce the concepts that you learn. The questions and exercises test your understanding of the material and challenge you to think critically and creatively. The chapter review problems provide a comprehensive review of the key topics and terms in each chapter. The social issues questions encourage you to explore the ethical, legal, and social aspects of computer science. The book also provides answers to selected questions and exercises at the end of the book.
Use Python to prepare for future courses
The book incorporates an introduction to the Python programming language into key chapters. Python is one of the most popular and powerful programming languages today. It is easy to learn, expressive, and versatile. It is widely used for various applications and domains, such as web development, data science, artificial intelligence, and more. It is also a common language for teaching and learning computer science in many courses and institutions.
The book uses Python to illustrate some of the fundamental concepts and techniques of computer science, such as data types, operators, control structures, functions, recursion, data structures, algorithms, object-oriented programming, and exception handling. The book does not assume any prior knowledge of programming or Python. It provides clear explanations and examples of how to write and run Python programs. It also provides exercises and projects that allow you to practice and apply your Python skills.
Support learning with student resources
The book features a companion website with additional resources that enhance your learning experience. The companion website includes:
Online appendices that cover topics such as number systems, ASCII code, logic circuits, Java programming language, UML diagrams, XML syntax, HTML tags, CSS properties, JavaScript language, PHP language, SQL language, regular expressions, cryptography algorithms, artificial neural networks, genetic algorithms, cellular automata, Turing machines.
Online labs that provide hands-on activities and experiments that allow you to explore various topics and tools in computer science.
Online quizzes that provide instant feedback and assessment of your understanding of each chapter.
Online slides that summarize the main points and concepts of each chapter.
Online source code that contains all the Python programs that are presented in the book.
You can access the companion website by using the access code that comes with your book purchase or rental. You can also purchase or rent the eText version of the book that includes access to the companion website.
Conclusion
In this article, we have given you a brief overview of Computer Science: An Overview (12th Edition)
by Glenn Brookshear and Dennis Brylow, and explained why you should read it if you want to learn more about computer science. We have also provided you with some information on how to access the book and its companion website, where you can find additional resources that enhance your learning experience.
This book is one of the best books that can give you a comprehensive introduction to the field that covers all the important areas and concepts. It is written by two experienced authors who have been teaching computer science for decades. It is intended for use in the Introduction to Computer Science course, but it is also suitable for anyone who wants to get a breadth-first overview of computer science. It is written in a clear, accessible, and engaging style that makes it easy to read and understand.
If you are interested in learning more about computer science, whether you are a student taking an introductory course, or a reader looking for a general overview, you should consider reading Computer Science: An Overview (12th Edition). It will help you develop a practical, realistic understanding of computer science that can prepare you for future courses or careers in the field. It will also help you appreciate the applications and impacts of computer science on society and the world.
We hope that this article has sparked your curiosity and interest in computer science, and that you will enjoy reading this book as much as we did. You can buy or rent this book online or offline from various sources, such as Amazon, Pearson, or your local bookstore or library. You can also access the eText version of the book that includes access to the companion website with additional resources.
Thank you for reading this article, and happy learning!
FAQs
Here are some frequently asked questions and answers about Computer Science: An Overview (12th Edition)
and computer science in general:
<li