Portal:Computer science

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Shortcut:
This portal is for the academic discipline of computing science. For other related portals such as computer networking, computer security and information technology, please see portals: technology and applied sciences.
edit 

The Computing Science Portal

Computer-aj aj ashton 01.svg

Computer science is the study of the theoretical foundations of information and computation and their implementation and application in computer systems. Computing science encompasses many branches; some emphasize the computation of specific results (such as computer graphics), while others (such as computational complexity theory) relate to properties of computational problems. Still others focus on the challenges in implementing computations. For example, programming language theory studies approaches to describing a computation, while computer programming applies specific programming languages to craft a solution to some concrete computational problems.

edit 

Selected quote

...the unfactored criterion "A program is good (enough) as long as it satisfies your customers." is too woolly to be of any help.
Edsger W. Dijkstra (1930-2002)
[EWD603: Tripreport, E.W.Dijkstra Archive]
More selected quotes...
edit 

Featured article

Visualisation of a bubble sort
Bubble sort, also known as sinking sort, is a simple sorting algorithm that works by repeatedly stepping through the list to be sorted, comparing each pair of adjacent items and swapping them if they are in the wrong order. The pass through the list is repeated until no swaps are needed, which indicates that the list is sorted. The algorithm gets its name from the way smaller elements "bubble" to the top of the list. Because it only uses comparisons to operate on elements, it is a comparison sort. Although the algorithm is simple, it is not efficient for sorting large lists; other algorithms are better.
edit 

Selected picture

A partial map of the Internet, rendered based on ping delay and colored based on TLD.
Credit: The Opte Project

Partial map of the Internet based on the January 15, 2005 data found on opte.org . Each line is drawn between two nodes, representing two IP addresses. The length of the lines are indicative of the delay between those two nodes. This graph represents less than 30% of the Class C networks reachable by the data collection program in early 2005. Lines are color-coded according to their corresponding RFC 1918.

More selected pictures... Read more...
edit 

Related portals

edit 

Selected biography

In 2007 Allen was recognized for her work in high performance computing when she received the A.M. Turing Award for 2006.
Frances Elizabeth "Fran" Allen
b. 1932

Fran Allen is an American computing scientist and pioneer in the field of optimizing compilers. Her achievements include seminal work in compilers, code optimization, and parallelization. She also had a role in intelligence work on programming languages and security codes for the National Security Agency.

Allen is a fellow of the IEEE, the Association for Computing Machinery (ACM) and the Computer History Museum. She is currently on the Computer Science and Telecommunications Board, the Computer Research Associates (CRA) board and National Science Foundation's CISE Advisory Board. She is a member of the National Academy of Engineering, the American Academy of Arts and Sciences and the American Philosophical Society.

In 1997, Allen was inducted into the WITI Hall of Fame. She retired from IBM in 2002 and won the Augusta Ada Lovelace Award that year from the Association for Women in Computing.

In 2007 Allen was recognized for her work in high performance computing when she received the A.M. Turing Award for 2006. She became the first woman recipient in the forty year history of the award which is considered the Nobel Prize for computing and is given by the Association for Computing Machinery. In interviews following the award she hoped it would give more "opportunities for women in science, computing and engineering". In 2009 she was awarded an honorary doctor of science degree from McGill university for "pioneering contributions to the theory and practice of optimizing compiler techniques that laid the foundation for modern optimizing compilers and automatic parallel execution".

More selected biographies... Read more...
edit 

Computer science topics

Taxonomic classification
ACM Computing Classification System
Algorithms
Binary search · Brute-force search · Divide and conquer · Dynamic programming · Greedy · Recursive descent · Regular expressions
Applications
Relational databases · Spreadsheets · OLAP · Text editors · Word processors · Integrated Development Environments · Search engines · Numerical integration · Computational linguistics
Exotica
Distributed computing · Parallel computing · Real-time computing · Quantum computer · DNA computing
Hardware
Central processing unit · Computer architecture · CPU cache · Computer storage · History of computing hardware
Operating systems
Windows NT group · BeOS · BSD · Haiku · Lisp machine · Linux kernel · Unix · OpenVMS
Data languages
HTML · XML · MediaWiki · SQL · MDX
Script languages
AppleScript · DCL · JavaScript · JCL · PHP · TECO · Unix shell (Csh· Windows PowerShell
Programming languages
Ada · ALGOL · BASIC · C · C++ · C# · Erlang · Forth · Fortran · Haskell · Java · JavaScript · Lisp · Objective-C · Perl · PHP · PL/I · Prolog · Python · Ruby · Scala · Scheme
Programming paradigms
Functional programming · Imperative programming · Literate programming · Logic programming · Object-oriented programming · Structured programming
Theory
Ackermann function · Automata theory · Computational complexity theory
Computer scientists
Kent Beck · Ward Cunningham · Edsger Dijkstra · Jean Ichbiah · Gary Kildall · Donald Knuth · Marvin Minsky · Alan Turing · Niklaus Wirth
Other
Artificial intelligence · Bioinformatics · Computational linguistics · Computer graphics · Computer networking · History of computer science
Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages