Computer Sciences

Turning an analysis of Asimov's Foundation into art

In recent years, numerous computer scientists and artists worldwide have worked on projects that merge digital art and computer science. For instance, some introduced computational models that can create original artworks, ...

Engineering

New digital-camera-based system can 'see' around corners

What if your car possessed technology that warned you not only about objects in clear view of your vehicle—the way that cameras, radar, and laser can do now in many standard and autonomous vehicles—but also warned you ...

page 1 from 12

Computer science

Computer science (or computing science) is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems. It is frequently described as the systematic study of algorithmic processes that describe and transform information. According to Peter J. Denning, the fundamental question underlying computer science is, "What can be (efficiently) automated?" Computer science has many sub-fields; some, such as computer graphics, emphasize the computation of specific results, while others, such as computational complexity theory, study the properties of computational problems. Still others focus on the challenges in implementing computations. For example, programming language theory studies approaches to describing computations, while computer programming applies specific programming languages to solve specific computational problems, and human-computer interaction focuses on the challenges in making computers and computations useful, usable, and universally accessible to people.

The general public sometimes confuses computer science with vocational areas that deal with computers (such as information technology), or think that it relates to their own experience of computers, which typically involves activities such as gaming, web-browsing, and word-processing. However, the focus of computer science is more on understanding the properties of the programs used to implement software such as games and web-browsers, and using that understanding to create new programs or improve existing ones.

This text uses material from Wikipedia, licensed under CC BY-SA