Portal:Computer Programming
Learn about Portal:Computer programming topic at defaultLogic. defaultLogic provides comprehensive technology and business learning resources.


Example of an internet chess program, Lichess, showing artificial intelligence programming- if the white bishop at b3 moves to a2, capturing the black knight, then the black pawn at b1 is programmed to capture the bishop back. Black has just moved a pawn to c2.

Computer programming is the process of designing and building an executable computer program for accomplishing a specific computing task. Programming involves tasks such as: analysis, generating algorithms, profiling algorithms' accuracy and resource consumption, and the implementation of algorithms in a chosen programming language (commonly referred to as coding). The source code of a program is written in one or more languages that are intelligible to programmers, rather than machine code, which is directly executed by the central processing unit. The purpose of programming is to find a sequence of instructions that will automate the performance of a task (which can be as complex as an operating system) on a computer, often for solving a given problem. The process of programming thus often requires expertise in several different subjects, including knowledge of the application domain, specialized algorithms, and formal logic.

Tasks accompanying and related to programming include: testing, debugging, source code maintenance, implementation of build systems, and management of derived artifacts, such as the machine code of computer programs. These might be considered part of the programming process, but often the term software development is used for this larger process with the term programming, implementation, or coding reserved for the actual writing of code. Software engineering combines engineering techniques with software development practices. Reverse engineering is the opposite process. A hacker is any skilled computer expert that uses their technical knowledge to overcome a problem, but it can also mean a security hacker in common language.


Select [show] to view subtopics

Did you know?

Computer programming news

29 July 2019 - List of data breaches
Capital One announces that a major data breach occurred on July 19, 2019, by one individual who compromised the data of about 106 million people in the United States and Canada. The Federal Bureau of Investigation have made an arrest after the alleged hacker, 33-year-old Paige Thompson from Seattle, boasted about her actions online. (BBC)
20 June 2019 - Computer ransomware
Riviera Beach, Florida, is paying $600,000 to a hacker who took over local government computers three weeks ago. (CNN)
2 June 2019 -
Google has a cloud services outage that affects Gmail, Snapchat, YouTube and other services in parts of the United States. (CNBC)
23 May 2019 - Discoveries of exoplanets
Eighteen Earth-like exoplanets are discovered via a new algorithm. (New Atlas) (Space Ref)
14 May 2019 - Microarchitectural Data Sampling
Security researchers from Graz University of Technology and Catholic University of Leuven discover a major new class of Microarchitectural Data Sampling vulnerabilities called ZombieLoad in Intel processors, which, if exploited, can be used to steal sensitive information directly from the processor. Almost every computer with an Intel chip dating back to 2011 is affected by these vulnerabilities. (ZombieLoad disclosure website) (TechCrunch)
Linux kernel developers, Apple, Google and Microsoft release emergency patches for their products to mitigate ZombieLoad. (TechCrunch) (Phoronix)



Selected images

Click to enlarge and view description

Related portals

Associated Wikimedia

The following Wikimedia Foundation sister projects provide more on this subject:

Study Guides





Learning resources



  This article uses material from the Wikipedia page available here. It is released under the Creative Commons Attribution-Share-Alike License 3.0.



Music Scenes