Computer science

computer scientistcomputer sciencescomputer scientistscomputing sciencecomputerComputer Science and Engineeringcomputer science educationCSInformaticsComputer Studies
Computer science deals with the theoretical foundations of computation and practical techniques for their application.wikipedia
7,226 Related Articles

Algorithm

algorithmscomputer algorithmalgorithm design
It enables the use of algorithms to manipulate, store, and communicate digital information.
In mathematics and computer science, an algorithm is an unambiguous specification of how to solve a class of problems.

Computer scientist

computer science professioncomputer-scientist
A computer scientist studies the theory of computation and the practice of designing software systems.
A computer scientist is a person who has acquired the knowledge of computer science, the study of the theoretical foundations of information and computation and their application.

Computer graphics (computer science)

computer graphicsgraphics processingcolor graphics
Computational complexity theory is highly abstract, while computer graphics emphasizes real-world applications.
Computer graphics is a sub-field of Computer Science which studies methods for digitally synthesizing and manipulating visual content.

Programming language theory

programming language researchProgramming languagestheory of programming languages
Programming language theory considers approaches to the description of computational processes, while computer programming itself involves the use of programming languages and complex systems.
Programming language theory (PLT) is a branch of computer science that deals with the design, implementation, analysis, characterization, and classification of programming languages and their individual features.

Human–computer interaction

human-computer interactionhuman computer interactionHCI
Human–computer interaction considers the challenges in making computers useful, usable, and accessible. Human–computer interaction combines novel algorithms with design strategies that enable rapid human performance, low error rates, ease in learning, and high satisfaction. Researchers use ethnographic observation and automated data collection to understand user needs, then conduct usability tests to refine designs. Key innovations include the direct manipulation, selectable web links, touchscreen designs, mobile applications, and virtual reality.
As a field of research, human–computer interaction is situated at the intersection of computer science, behavioral sciences, design, media studies, and several other fields of study.

Complex system

complex systemscomplexity theorycomplexity science
Programming language theory considers approaches to the description of computational processes, while computer programming itself involves the use of programming languages and complex systems.
Complex systems is therefore often used as a broad term encompassing a research approach to problems in many diverse disciplines, including statistical physics, information theory, nonlinear dynamics, anthropology, computer science, meteorology, sociology, economics, psychology, and biology.

Department of Computer Science and Technology, University of Cambridge

Computer LaboratoryCambridge Computer LaboratoryDepartment of Computer Science and Technology
The world's first computer science degree program, the Cambridge Diploma in Computer Science, began at the University of Cambridge Computer Laboratory in 1953.
The Department of Computer Science and Technology, formerly the Computer Laboratory, is the computer science department of the University of Cambridge.

Cambridge Diploma in Computer Science

Diploma in Computer Sciencedegree in computer sciencediploma in computing
The world's first computer science degree program, the Cambridge Diploma in Computer Science, began at the University of Cambridge Computer Laboratory in 1953.
Diploma in Computer Science, originally known as the "Diploma in Numerical Analysis and Automatic Computing", was a conversion course in Computer Science offered by the University of Cambridge, England.

Computing

computer technologycomputercomputational
During the 1940s, as new and more powerful computing machines were developed, the term computer came to refer to the machines rather than their human predecessors.
Major computing disciplines include computer engineering, software engineering, computer science, information systems, and information technology.

Computation

computationalcomputationscomputing
As it became clear that computers could be used for more than just mathematical calculations, the field of computer science broadened to study computation in general. A formal definition of computation and computability, and proof that there are computationally unsolvable and intractable problems.
The study of computation is paramount to the discipline of computer science.

Distributed computing

distributeddistributed systemsdistributed system
Scientific computing enabled practical evaluation of processes and situations of great complexity, as well as experimentation entirely by software. It also enabled advanced study of the mind, and mapping of the human genome became possible with the Human Genome Project. Distributed computing projects such as Folding@home explore protein folding.
Distributed computing is a field of computer science that studies distributed systems.

Cryptography

cryptographiccryptographercryptology
In cryptography, breaking the Enigma code was an important factor contributing to the Allied victory in World War II.
Modern cryptography exists at the intersection of the disciplines of mathematics, computer science, electrical engineering, communication science, and physics.

Computability

computablecomputable in ''Dcomputation
A formal definition of computation and computability, and proof that there are computationally unsolvable and intractable problems.
It is a key topic of the field of computability theory within mathematical logic and the theory of computation within computer science.

Artificial intelligence

AIartificially intelligentA.I.
Algorithmic trading has increased the efficiency and liquidity of financial markets by using artificial intelligence, machine learning, and other statistical and numerical techniques on a large scale. High frequency algorithmic trading can also exacerbate volatility.
In the field of computer science, artificial intelligence (AI), sometimes called machine intelligence, is intelligence demonstrated by machines, in contrast to the natural intelligence displayed by humans and other animals.

Numerical analysis

numerical methodsnumericalnumerical computation
Algorithmic trading has increased the efficiency and liquidity of financial markets by using artificial intelligence, machine learning, and other statistical and numerical techniques on a large scale. High frequency algorithmic trading can also exacerbate volatility. His efforts, and those of others such as numerical analyst George Forsythe, were rewarded: universities went on to create such programs, starting with Purdue in 1962.
As an aspect of mathematics and computer science that generates, analyzes, and implements algorithms, the growth in power and the revolution in computing has raised the use of realistic mathematical models in science and engineering, and complex numerical analysis is required to provide solutions to these more involved models of the world.

Computer graphics

graphicsCGcomputer-generated
Computer graphics and computer-generated imagery have become ubiquitous in modern entertainment, particularly in television, cinema, advertising, animation and video games. Even films that feature no explicit CGI are usually "filmed" now on digital cameras, or edited or post-processed using a digital video editor.
the sub-field of computer science which studies methods for digitally synthesizing and manipulating visual content, see study of computer graphics

Theory of computation

computational theoristcomputational theorycomputation theory
A computer scientist studies the theory of computation and the practice of designing software systems.
Perhaps the most important open problem in all of computer science is the question of whether a certain broad class of problems denoted NP can be solved efficiently.

Direct manipulation interface

direct manipulationmanipulate direct 3D manipulation
Human–computer interaction combines novel algorithms with design strategies that enable rapid human performance, low error rates, ease in learning, and high satisfaction. Researchers use ethnographic observation and automated data collection to understand user needs, then conduct usability tests to refine designs. Key innovations include the direct manipulation, selectable web links, touchscreen designs, mobile applications, and virtual reality.
In computer science, direct manipulation is a human–computer interaction style which involves continuous representation of objects of interest and rapid, reversible, and incremental actions and feedback.

Peter Naur

Naur, Peter
Danish scientist Peter Naur suggested the term datalogy, to reflect the fact that the scientific discipline revolves around data and data treatment, while not necessarily involving computers.
Peter Naur (25 October 1928 – 3 January 2016) was a Danish computer science pioneer and Turing award winner.

Machine learning

learningmachine-learningstatistical learning
Algorithmic trading has increased the efficiency and liquidity of financial markets by using artificial intelligence, machine learning, and other statistical and numerical techniques on a large scale. High frequency algorithmic trading can also exacerbate volatility.
Neural networks research had been abandoned by AI and computer science around the same time.

Simulation

simulatorsimulatesimulations
Simulation of various processes, including computational fluid dynamics, physical, electrical, and electronic systems and circuits, as well as societies and social situations (notably war games) along with their habitats, among many others. Modern computers enable optimization of such designs as complete aircraft. Notable in electrical and electronic circuit design are SPICE, as well as software for physical realization of new (or modified) designs. The latter includes essential design software for integrated circuits.
In computer science, simulation has some specialized meanings: Alan Turing used the term "simulation" to refer to what happens when a universal machine executes a state transition table (in modern terminology, a computer runs a program) that describes the state transitions, inputs and outputs of a subject discrete-state machine.

Computer engineering

computer engineerComputerengineering
For example, the study of computer hardware is usually considered part of computer engineering, while the study of commercial computer systems and their deployment is often called information technology or information systems.
Computer engineering is a branch of engineering that integrates several fields of computer science and electronics engineering required to develop computer hardware and software.

George Forsythe

G. E. Forsythe
His efforts, and those of others such as numerical analyst George Forsythe, were rewarded: universities went on to create such programs, starting with Purdue in 1962.
Forsythe served as the president of the Association for Computing Machinery (ACM), and also co-authored four books on computer science and a fifth on meteorology, and edited more than 75 other books on computer science.

Computational linguistics

computational linguistmathematical linguisticscomputer linguistics
Computer science research also often intersects other disciplines, such as philosophy, cognitive science, linguistics, mathematics, physics, biology, statistics, and logic.
In general, computational linguistics draws upon the involvement of linguists, computer scientists, experts in artificial intelligence, mathematicians, logicians, philosophers, cognitive scientists, cognitive psychologists, psycholinguists, anthropologists and neuroscientists, among others.

Data science

data scientistdata scientistsdata-driven
An alternative term, also proposed by Naur, is data science; this is now used for a distinct field of data analysis, including statistics and databases.
It employs techniques and theories drawn from many fields within the context of mathematics, statistics, information science, and computer science.