CINXE.COM
Computer programming - Wikipedia
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>Computer programming - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"c231d68c-52d1-4cba-9fb1-72b4d3ed29ad","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Computer_programming","wgTitle":"Computer programming","wgCurRevisionId":1259007373,"wgRevisionId":1259007373,"wgArticleId":5311,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Webarchive template wayback links","Articles with short description","Short description is different from Wikidata","Use mdy dates from November 2020","Use American English from November 2020","All Wikipedia articles written in American English","Commons category link is on Wikidata","Computer programming","Computers"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Computer_programming","wgRelevantArticleId": 5311,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":30000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q80006","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"], "GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","jquery.makeCollapsible.styles":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","mediawiki.page.media","site","mediawiki.page.ready","jquery.makeCollapsible","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.switcher","ext.urlShortener.toolbar", "ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&modules=ext.cite.styles%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediaBadges%7Cext.wikimediamessages.styles%7Cjquery.makeCollapsible.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Computer programming - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//en.m.wikipedia.org/wiki/Computer_programming"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=Computer_programming&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/Computer_programming"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom feed" href="/w/index.php?title=Special:RecentChanges&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Computer_programming rootpage-Computer_programming skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Main_Page" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-contents" class="mw-list-item"><a href="/wiki/Wikipedia:Contents" title="Guides to browsing Wikipedia"><span>Contents</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Current_events" title="Articles related to current events"><span>Current events</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Visit a randomly selected article [x]" accesskey="x"><span>Random article</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:About" title="Learn about Wikipedia and how it works"><span>About Wikipedia</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us" title="How to contact Wikipedia"><span>Contact us</span></a></li> </ul> </div> </div> <div id="p-interaction" class="vector-menu mw-portlet mw-portlet-interaction" > <div class="vector-menu-heading"> Contribute </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:Contents" title="Guidance on how to use and edit Wikipedia"><span>Help</span></a></li><li id="n-introduction" class="mw-list-item"><a href="/wiki/Help:Introduction" title="Learn how to edit Wikipedia"><span>Learn to edit</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Community_portal" title="The hub for editors"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes to Wikipedia [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_upload_wizard" title="Add images or other media for use on Wikipedia"><span>Upload file</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Main_Page" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="The Free Encyclopedia" src="/static/images/mobile/copyright/wikipedia-tagline-en.svg" width="117" height="13" style="width: 7.3125em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page's font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&returnto=Computer+programming" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&returnto=Computer+programming" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Log in and more options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&returnto=Computer+programming" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&returnto=Computer+programming" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Introduction" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">(Top)</div> </a> </li> <li id="toc-History" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#History"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>History</span> </div> </a> <button aria-controls="toc-History-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle History subsection</span> </button> <ul id="toc-History-sublist" class="vector-toc-list"> <li id="toc-Machine_language" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Machine_language"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1</span> <span>Machine language</span> </div> </a> <ul id="toc-Machine_language-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Compiler_languages" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Compiler_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.2</span> <span>Compiler languages</span> </div> </a> <ul id="toc-Compiler_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Source_code_entry" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Source_code_entry"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.3</span> <span>Source code entry</span> </div> </a> <ul id="toc-Source_code_entry-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Modern_programming" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Modern_programming"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Modern programming</span> </div> </a> <button aria-controls="toc-Modern_programming-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Modern programming subsection</span> </button> <ul id="toc-Modern_programming-sublist" class="vector-toc-list"> <li id="toc-Quality_requirements" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Quality_requirements"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>Quality requirements</span> </div> </a> <ul id="toc-Quality_requirements-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Readability_of_source_code" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Readability_of_source_code"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.2</span> <span>Readability of source code</span> </div> </a> <ul id="toc-Readability_of_source_code-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Algorithmic_complexity" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Algorithmic_complexity"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.3</span> <span>Algorithmic complexity</span> </div> </a> <ul id="toc-Algorithmic_complexity-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Methodologies" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Methodologies"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.4</span> <span>Methodologies</span> </div> </a> <ul id="toc-Methodologies-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Measuring_language_usage" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Measuring_language_usage"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.5</span> <span>Measuring language usage</span> </div> </a> <ul id="toc-Measuring_language_usage-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Debugging" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Debugging"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.6</span> <span>Debugging</span> </div> </a> <ul id="toc-Debugging-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Programming_languages" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Programming_languages"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Programming languages</span> </div> </a> <ul id="toc-Programming_languages-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Programmers" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Programmers"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Programmers</span> </div> </a> <ul id="toc-Programmers-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-See_also" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#See_also"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>See also</span> </div> </a> <ul id="toc-See_also-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-References" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#References"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>References</span> </div> </a> <button aria-controls="toc-References-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle References subsection</span> </button> <ul id="toc-References-sublist" class="vector-toc-list"> <li id="toc-Sources" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Sources"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.1</span> <span>Sources</span> </div> </a> <ul id="toc-Sources-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Further_reading" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Further_reading"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Further reading</span> </div> </a> <ul id="toc-Further_reading-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-External_links" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#External_links"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>External links</span> </div> </a> <ul id="toc-External_links-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Computer programming</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Go to an article in another language. Available in 88 languages" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-88" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">88 languages</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-af mw-list-item"><a href="https://af.wikipedia.org/wiki/Rekenaarprogrammering" title="Rekenaarprogrammering – Afrikaans" lang="af" hreflang="af" data-title="Rekenaarprogrammering" data-language-autonym="Afrikaans" data-language-local-name="Afrikaans" class="interlanguage-link-target"><span>Afrikaans</span></a></li><li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D8%A8%D8%B1%D9%85%D8%AC%D8%A9" title="برمجة – Arabic" lang="ar" hreflang="ar" data-title="برمجة" data-language-autonym="العربية" data-language-local-name="Arabic" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-an mw-list-item"><a href="https://an.wikipedia.org/wiki/Programaci%C3%B3n" title="Programación – Aragonese" lang="an" hreflang="an" data-title="Programación" data-language-autonym="Aragonés" data-language-local-name="Aragonese" class="interlanguage-link-target"><span>Aragonés</span></a></li><li class="interlanguage-link interwiki-as mw-list-item"><a href="https://as.wikipedia.org/wiki/%E0%A6%95%E0%A6%AE%E0%A7%8D%E0%A6%AA%E0%A6%BF%E0%A6%89%E0%A6%9F%E0%A6%BE%E0%A7%B0_%E0%A6%AA%E0%A7%8D%E0%A7%B0%E0%A6%97%E0%A7%8D%E0%A7%B0%E0%A7%87%E0%A6%AE%E0%A6%BF%E0%A6%82" title="কম্পিউটাৰ প্ৰগ্ৰেমিং – Assamese" lang="as" hreflang="as" data-title="কম্পিউটাৰ প্ৰগ্ৰেমিং" data-language-autonym="অসমীয়া" data-language-local-name="Assamese" class="interlanguage-link-target"><span>অসমীয়া</span></a></li><li class="interlanguage-link interwiki-ast mw-list-item"><a href="https://ast.wikipedia.org/wiki/Programaci%C3%B3n" title="Programación – Asturian" lang="ast" hreflang="ast" data-title="Programación" data-language-autonym="Asturianu" data-language-local-name="Asturian" class="interlanguage-link-target"><span>Asturianu</span></a></li><li class="interlanguage-link interwiki-az mw-list-item"><a href="https://az.wikipedia.org/wiki/Proqramla%C5%9Fd%C4%B1rma" title="Proqramlaşdırma – Azerbaijani" lang="az" hreflang="az" data-title="Proqramlaşdırma" data-language-autonym="Azərbaycanca" data-language-local-name="Azerbaijani" class="interlanguage-link-target"><span>Azərbaycanca</span></a></li><li class="interlanguage-link interwiki-bn mw-list-item"><a href="https://bn.wikipedia.org/wiki/%E0%A6%95%E0%A6%AE%E0%A7%8D%E0%A6%AA%E0%A6%BF%E0%A6%89%E0%A6%9F%E0%A6%BE%E0%A6%B0_%E0%A6%AA%E0%A7%8D%E0%A6%B0%E0%A7%8B%E0%A6%97%E0%A7%8D%E0%A6%B0%E0%A6%BE%E0%A6%AE%E0%A6%BF%E0%A6%82" title="কম্পিউটার প্রোগ্রামিং – Bangla" lang="bn" hreflang="bn" data-title="কম্পিউটার প্রোগ্রামিং" data-language-autonym="বাংলা" data-language-local-name="Bangla" class="interlanguage-link-target"><span>বাংলা</span></a></li><li class="interlanguage-link interwiki-ba mw-list-item"><a href="https://ba.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0%D0%BB%D0%B0%D1%83" title="Программалау – Bashkir" lang="ba" hreflang="ba" data-title="Программалау" data-language-autonym="Башҡортса" data-language-local-name="Bashkir" class="interlanguage-link-target"><span>Башҡортса</span></a></li><li class="interlanguage-link interwiki-be mw-list-item"><a href="https://be.wikipedia.org/wiki/%D0%9F%D1%80%D0%B0%D0%B3%D1%80%D0%B0%D0%BC%D0%B0%D0%B2%D0%B0%D0%BD%D0%BD%D0%B5" title="Праграмаванне – Belarusian" lang="be" hreflang="be" data-title="Праграмаванне" data-language-autonym="Беларуская" data-language-local-name="Belarusian" class="interlanguage-link-target"><span>Беларуская</span></a></li><li class="interlanguage-link interwiki-be-x-old mw-list-item"><a href="https://be-tarask.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BC%D0%BF%D1%83%D1%82%D0%B0%D1%80%D0%BD%D0%B0%D0%B5_%D0%BF%D1%80%D0%B0%D0%B3%D1%80%D0%B0%D0%BC%D0%B0%D0%B2%D0%B0%D0%BD%D1%8C%D0%BD%D0%B5" title="Кампутарнае праграмаваньне – Belarusian (Taraškievica orthography)" lang="be-tarask" hreflang="be-tarask" data-title="Кампутарнае праграмаваньне" data-language-autonym="Беларуская (тарашкевіца)" data-language-local-name="Belarusian (Taraškievica orthography)" class="interlanguage-link-target"><span>Беларуская (тарашкевіца)</span></a></li><li class="interlanguage-link interwiki-bg mw-list-item"><a href="https://bg.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%B8%D1%80%D0%B0%D0%BD%D0%B5" title="Програмиране – Bulgarian" lang="bg" hreflang="bg" data-title="Програмиране" data-language-autonym="Български" data-language-local-name="Bulgarian" class="interlanguage-link-target"><span>Български</span></a></li><li class="interlanguage-link interwiki-bs mw-list-item"><a href="https://bs.wikipedia.org/wiki/Ra%C4%8Dunarsko_programiranje" title="Računarsko programiranje – Bosnian" lang="bs" hreflang="bs" data-title="Računarsko programiranje" data-language-autonym="Bosanski" data-language-local-name="Bosnian" class="interlanguage-link-target"><span>Bosanski</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Programaci%C3%B3_d%27ordinadors" title="Programació d'ordinadors – Catalan" lang="ca" hreflang="ca" data-title="Programació d'ordinadors" data-language-autonym="Català" data-language-local-name="Catalan" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-cv mw-list-item"><a href="https://cv.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%C4%83%D0%BB%D0%B0%D0%B2" title="Программăлав – Chuvash" lang="cv" hreflang="cv" data-title="Программăлав" data-language-autonym="Чӑвашла" data-language-local-name="Chuvash" class="interlanguage-link-target"><span>Чӑвашла</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/Programov%C3%A1n%C3%AD" title="Programování – Czech" lang="cs" hreflang="cs" data-title="Programování" data-language-autonym="Čeština" data-language-local-name="Czech" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-da mw-list-item"><a href="https://da.wikipedia.org/wiki/Programmering" title="Programmering – Danish" lang="da" hreflang="da" data-title="Programmering" data-language-autonym="Dansk" data-language-local-name="Danish" class="interlanguage-link-target"><span>Dansk</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Programmierung" title="Programmierung – German" lang="de" hreflang="de" data-title="Programmierung" data-language-autonym="Deutsch" data-language-local-name="German" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-et mw-list-item"><a href="https://et.wikipedia.org/wiki/Programmeerimine" title="Programmeerimine – Estonian" lang="et" hreflang="et" data-title="Programmeerimine" data-language-autonym="Eesti" data-language-local-name="Estonian" class="interlanguage-link-target"><span>Eesti</span></a></li><li class="interlanguage-link interwiki-el mw-list-item"><a href="https://el.wikipedia.org/wiki/%CE%A0%CF%81%CE%BF%CE%B3%CF%81%CE%B1%CE%BC%CE%BC%CE%B1%CF%84%CE%B9%CF%83%CE%BC%CF%8C%CF%82" title="Προγραμματισμός – Greek" lang="el" hreflang="el" data-title="Προγραμματισμός" data-language-autonym="Ελληνικά" data-language-local-name="Greek" class="interlanguage-link-target"><span>Ελληνικά</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/Programaci%C3%B3n" title="Programación – Spanish" lang="es" hreflang="es" data-title="Programación" data-language-autonym="Español" data-language-local-name="Spanish" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-eo mw-list-item"><a href="https://eo.wikipedia.org/wiki/Programado" title="Programado – Esperanto" lang="eo" hreflang="eo" data-title="Programado" data-language-autonym="Esperanto" data-language-local-name="Esperanto" class="interlanguage-link-target"><span>Esperanto</span></a></li><li class="interlanguage-link interwiki-eu mw-list-item"><a href="https://eu.wikipedia.org/wiki/Programazio" title="Programazio – Basque" lang="eu" hreflang="eu" data-title="Programazio" data-language-autonym="Euskara" data-language-local-name="Basque" class="interlanguage-link-target"><span>Euskara</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87%E2%80%8C%D8%A7%DB%8C" title="برنامهنویسی رایانهای – Persian" lang="fa" hreflang="fa" data-title="برنامهنویسی رایانهای" data-language-autonym="فارسی" data-language-local-name="Persian" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Programmation_informatique" title="Programmation informatique – French" lang="fr" hreflang="fr" data-title="Programmation informatique" data-language-autonym="Français" data-language-local-name="French" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-gl mw-list-item"><a href="https://gl.wikipedia.org/wiki/Programaci%C3%B3n" title="Programación – Galician" lang="gl" hreflang="gl" data-title="Programación" data-language-autonym="Galego" data-language-local-name="Galician" class="interlanguage-link-target"><span>Galego</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/%EC%BB%B4%ED%93%A8%ED%84%B0_%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D" title="컴퓨터 프로그래밍 – Korean" lang="ko" hreflang="ko" data-title="컴퓨터 프로그래밍" data-language-autonym="한국어" data-language-local-name="Korean" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-hy mw-list-item"><a href="https://hy.wikipedia.org/wiki/%D4%BE%D6%80%D5%A1%D5%A3%D6%80%D5%A1%D5%BE%D5%B8%D6%80%D5%B8%D6%82%D5%B4" title="Ծրագրավորում – Armenian" lang="hy" hreflang="hy" data-title="Ծրագրավորում" data-language-autonym="Հայերեն" data-language-local-name="Armenian" class="interlanguage-link-target"><span>Հայերեն</span></a></li><li class="interlanguage-link interwiki-hi mw-list-item"><a href="https://hi.wikipedia.org/wiki/%E0%A4%95%E0%A5%8D%E0%A4%B0%E0%A4%AE%E0%A4%BE%E0%A4%A8%E0%A5%81%E0%A4%A6%E0%A5%87%E0%A4%B6%E0%A4%A8" title="क्रमानुदेशन – Hindi" lang="hi" hreflang="hi" data-title="क्रमानुदेशन" data-language-autonym="हिन्दी" data-language-local-name="Hindi" class="interlanguage-link-target"><span>हिन्दी</span></a></li><li class="interlanguage-link interwiki-hr mw-list-item"><a href="https://hr.wikipedia.org/wiki/Ra%C4%8Dunalno_programiranje" title="Računalno programiranje – Croatian" lang="hr" hreflang="hr" data-title="Računalno programiranje" data-language-autonym="Hrvatski" data-language-local-name="Croatian" class="interlanguage-link-target"><span>Hrvatski</span></a></li><li class="interlanguage-link interwiki-id mw-list-item"><a href="https://id.wikipedia.org/wiki/Pemrograman" title="Pemrograman – Indonesian" lang="id" hreflang="id" data-title="Pemrograman" data-language-autonym="Bahasa Indonesia" data-language-local-name="Indonesian" class="interlanguage-link-target"><span>Bahasa Indonesia</span></a></li><li class="interlanguage-link interwiki-zu mw-list-item"><a href="https://zu.wikipedia.org/wiki/Ukuhlelelisa_isiCikizi" title="Ukuhlelelisa isiCikizi – Zulu" lang="zu" hreflang="zu" data-title="Ukuhlelelisa isiCikizi" data-language-autonym="IsiZulu" data-language-local-name="Zulu" class="interlanguage-link-target"><span>IsiZulu</span></a></li><li class="interlanguage-link interwiki-it mw-list-item"><a href="https://it.wikipedia.org/wiki/Programmazione_(informatica)" title="Programmazione (informatica) – Italian" lang="it" hreflang="it" data-title="Programmazione (informatica)" data-language-autonym="Italiano" data-language-local-name="Italian" class="interlanguage-link-target"><span>Italiano</span></a></li><li class="interlanguage-link interwiki-he mw-list-item"><a href="https://he.wikipedia.org/wiki/%D7%AA%D7%9B%D7%A0%D7%95%D7%AA_%D7%9E%D7%97%D7%A9%D7%91%D7%99%D7%9D" title="תכנות מחשבים – Hebrew" lang="he" hreflang="he" data-title="תכנות מחשבים" data-language-autonym="עברית" data-language-local-name="Hebrew" class="interlanguage-link-target"><span>עברית</span></a></li><li class="interlanguage-link interwiki-kn mw-list-item"><a href="https://kn.wikipedia.org/wiki/%E0%B2%95%E0%B2%82%E0%B2%AA%E0%B3%8D%E0%B2%AF%E0%B3%82%E0%B2%9F%E0%B2%B0%E0%B3%8D_%E0%B2%AA%E0%B3%8D%E0%B2%B0%E0%B3%8B%E0%B2%97%E0%B3%8D%E0%B2%B0%E0%B2%BE%E0%B2%AE%E0%B2%BF%E0%B2%82%E0%B2%97%E0%B3%8D" title="ಕಂಪ್ಯೂಟರ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ – Kannada" lang="kn" hreflang="kn" data-title="ಕಂಪ್ಯೂಟರ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್" data-language-autonym="ಕನ್ನಡ" data-language-local-name="Kannada" class="interlanguage-link-target"><span>ಕನ್ನಡ</span></a></li><li class="interlanguage-link interwiki-kk mw-list-item"><a href="https://kk.wikipedia.org/wiki/%D0%91%D0%B0%D2%93%D0%B4%D0%B0%D1%80%D0%BB%D0%B0%D0%BC%D0%B0%D0%BB%D0%B0%D1%83" title="Бағдарламалау – Kazakh" lang="kk" hreflang="kk" data-title="Бағдарламалау" data-language-autonym="Қазақша" data-language-local-name="Kazakh" class="interlanguage-link-target"><span>Қазақша</span></a></li><li class="interlanguage-link interwiki-ky mw-list-item"><a href="https://ky.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0%D0%BB%D0%BE%D0%BE" title="Программалоо – Kyrgyz" lang="ky" hreflang="ky" data-title="Программалоо" data-language-autonym="Кыргызча" data-language-local-name="Kyrgyz" class="interlanguage-link-target"><span>Кыргызча</span></a></li><li class="interlanguage-link interwiki-la mw-list-item"><a href="https://la.wikipedia.org/wiki/Programmatura_computatralis" title="Programmatura computatralis – Latin" lang="la" hreflang="la" data-title="Programmatura computatralis" data-language-autonym="Latina" data-language-local-name="Latin" class="interlanguage-link-target"><span>Latina</span></a></li><li class="interlanguage-link interwiki-lv mw-list-item"><a href="https://lv.wikipedia.org/wiki/Programm%C4%93%C5%A1ana" title="Programmēšana – Latvian" lang="lv" hreflang="lv" data-title="Programmēšana" data-language-autonym="Latviešu" data-language-local-name="Latvian" class="interlanguage-link-target"><span>Latviešu</span></a></li><li class="interlanguage-link interwiki-lt mw-list-item"><a href="https://lt.wikipedia.org/wiki/Programavimas" title="Programavimas – Lithuanian" lang="lt" hreflang="lt" data-title="Programavimas" data-language-autonym="Lietuvių" data-language-local-name="Lithuanian" class="interlanguage-link-target"><span>Lietuvių</span></a></li><li class="interlanguage-link interwiki-jbo mw-list-item"><a href="https://jbo.wikipedia.org/wiki/sampla" title="sampla – Lojban" lang="jbo" hreflang="jbo" data-title="sampla" data-language-autonym="La .lojban." data-language-local-name="Lojban" class="interlanguage-link-target"><span>La .lojban.</span></a></li><li class="interlanguage-link interwiki-lmo mw-list-item"><a href="https://lmo.wikipedia.org/wiki/Programmazion" title="Programmazion – Lombard" lang="lmo" hreflang="lmo" data-title="Programmazion" data-language-autonym="Lombard" data-language-local-name="Lombard" class="interlanguage-link-target"><span>Lombard</span></a></li><li class="interlanguage-link interwiki-hu mw-list-item"><a href="https://hu.wikipedia.org/wiki/Sz%C3%A1m%C3%ADt%C3%B3g%C3%A9p-programoz%C3%A1s" title="Számítógép-programozás – Hungarian" lang="hu" hreflang="hu" data-title="Számítógép-programozás" data-language-autonym="Magyar" data-language-local-name="Hungarian" class="interlanguage-link-target"><span>Magyar</span></a></li><li class="interlanguage-link interwiki-mk mw-list-item"><a href="https://mk.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%B8%D1%80%D0%B0%D1%9A%D0%B5" title="Програмирање – Macedonian" lang="mk" hreflang="mk" data-title="Програмирање" data-language-autonym="Македонски" data-language-local-name="Macedonian" class="interlanguage-link-target"><span>Македонски</span></a></li><li class="interlanguage-link interwiki-ml mw-list-item"><a href="https://ml.wikipedia.org/wiki/%E0%B4%95%E0%B4%AE%E0%B5%8D%E0%B4%AA%E0%B5%8D%E0%B4%AF%E0%B5%82%E0%B4%9F%E0%B5%8D%E0%B4%9F%E0%B5%BC_%E0%B4%AA%E0%B5%8D%E0%B4%B0%E0%B5%8B%E0%B4%97%E0%B5%8D%E0%B4%B0%E0%B4%BE%E0%B4%AE%E0%B4%BF%E0%B4%99%E0%B5%8D%E0%B4%99%E0%B5%8D" title="കമ്പ്യൂട്ടർ പ്രോഗ്രാമിങ്ങ് – Malayalam" lang="ml" hreflang="ml" data-title="കമ്പ്യൂട്ടർ പ്രോഗ്രാമിങ്ങ്" data-language-autonym="മലയാളം" data-language-local-name="Malayalam" class="interlanguage-link-target"><span>മലയാളം</span></a></li><li class="interlanguage-link interwiki-mr mw-list-item"><a href="https://mr.wikipedia.org/wiki/%E0%A4%B8%E0%A4%82%E0%A4%97%E0%A4%A3%E0%A4%95_%E0%A4%86%E0%A4%9C%E0%A5%8D%E0%A4%9E%E0%A4%BE%E0%A4%B5%E0%A4%B2%E0%A5%80" title="संगणक आज्ञावली – Marathi" lang="mr" hreflang="mr" data-title="संगणक आज्ञावली" data-language-autonym="मराठी" data-language-local-name="Marathi" class="interlanguage-link-target"><span>मराठी</span></a></li><li class="interlanguage-link interwiki-arz mw-list-item"><a href="https://arz.wikipedia.org/wiki/%D8%A8%D8%B1%D9%85%D8%AC%D9%87" title="برمجه – Egyptian Arabic" lang="arz" hreflang="arz" data-title="برمجه" data-language-autonym="مصرى" data-language-local-name="Egyptian Arabic" class="interlanguage-link-target"><span>مصرى</span></a></li><li class="interlanguage-link interwiki-ms mw-list-item"><a href="https://ms.wikipedia.org/wiki/Pengaturcaraan" title="Pengaturcaraan – Malay" lang="ms" hreflang="ms" data-title="Pengaturcaraan" data-language-autonym="Bahasa Melayu" data-language-local-name="Malay" class="interlanguage-link-target"><span>Bahasa Melayu</span></a></li><li class="interlanguage-link interwiki-mn mw-list-item"><a href="https://mn.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%87%D0%BB%D0%B0%D0%BB" title="Програмчлал – Mongolian" lang="mn" hreflang="mn" data-title="Програмчлал" data-language-autonym="Монгол" data-language-local-name="Mongolian" class="interlanguage-link-target"><span>Монгол</span></a></li><li class="interlanguage-link interwiki-nl mw-list-item"><a href="https://nl.wikipedia.org/wiki/Programmeren_(computer)" title="Programmeren (computer) – Dutch" lang="nl" hreflang="nl" data-title="Programmeren (computer)" data-language-autonym="Nederlands" data-language-local-name="Dutch" class="interlanguage-link-target"><span>Nederlands</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="プログラミング – Japanese" lang="ja" hreflang="ja" data-title="プログラミング" data-language-autonym="日本語" data-language-local-name="Japanese" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-no mw-list-item"><a href="https://no.wikipedia.org/wiki/Programmering" title="Programmering – Norwegian Bokmål" lang="nb" hreflang="nb" data-title="Programmering" data-language-autonym="Norsk bokmål" data-language-local-name="Norwegian Bokmål" class="interlanguage-link-target"><span>Norsk bokmål</span></a></li><li class="interlanguage-link interwiki-nn mw-list-item"><a href="https://nn.wikipedia.org/wiki/Programmering" title="Programmering – Norwegian Nynorsk" lang="nn" hreflang="nn" data-title="Programmering" data-language-autonym="Norsk nynorsk" data-language-local-name="Norwegian Nynorsk" class="interlanguage-link-target"><span>Norsk nynorsk</span></a></li><li class="interlanguage-link interwiki-oc mw-list-item"><a href="https://oc.wikipedia.org/wiki/Programacion_informatica" title="Programacion informatica – Occitan" lang="oc" hreflang="oc" data-title="Programacion informatica" data-language-autonym="Occitan" data-language-local-name="Occitan" class="interlanguage-link-target"><span>Occitan</span></a></li><li class="interlanguage-link interwiki-mhr mw-list-item"><a href="https://mhr.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BB%D1%8B%D0%BC%D0%B0%D1%88" title="Программлымаш – Eastern Mari" lang="mhr" hreflang="mhr" data-title="Программлымаш" data-language-autonym="Олык марий" data-language-local-name="Eastern Mari" class="interlanguage-link-target"><span>Олык марий</span></a></li><li class="interlanguage-link interwiki-uz mw-list-item"><a href="https://uz.wikipedia.org/wiki/Dasturlash" title="Dasturlash – Uzbek" lang="uz" hreflang="uz" data-title="Dasturlash" data-language-autonym="Oʻzbekcha / ўзбекча" data-language-local-name="Uzbek" class="interlanguage-link-target"><span>Oʻzbekcha / ўзбекча</span></a></li><li class="interlanguage-link interwiki-pnb mw-list-item"><a href="https://pnb.wikipedia.org/wiki/%DA%A9%D9%85%D9%BE%DB%8C%D9%88%D9%B9%D8%B1_%D9%BE%D8%B1%D9%88%DA%AF%D8%B1%D8%A7%D9%85%D9%86%DA%AF" title="کمپیوٹر پروگرامنگ – Western Punjabi" lang="pnb" hreflang="pnb" data-title="کمپیوٹر پروگرامنگ" data-language-autonym="پنجابی" data-language-local-name="Western Punjabi" class="interlanguage-link-target"><span>پنجابی</span></a></li><li class="interlanguage-link interwiki-km mw-list-item"><a href="https://km.wikipedia.org/wiki/%E1%9E%80%E1%9E%BB%E1%9F%86%E1%9E%96%E1%9F%92%E1%9E%99%E1%9E%BC%E1%9E%91%E1%9F%90%E1%9E%9A%E1%9E%95%E1%9F%92%E1%9E%9A%E1%9E%BC%E1%9E%80%E1%9F%92%E1%9E%9A%E1%9E%B6%E1%9E%98%E1%9E%98%E1%9E%B8%E1%9E%84(Computer_programming)" title="កុំព្យូទ័រផ្រូក្រាមមីង(Computer programming) – Khmer" lang="km" hreflang="km" data-title="កុំព្យូទ័រផ្រូក្រាមមីង(Computer programming)" data-language-autonym="ភាសាខ្មែរ" data-language-local-name="Khmer" class="interlanguage-link-target"><span>ភាសាខ្មែរ</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/Programowanie_komputer%C3%B3w" title="Programowanie komputerów – Polish" lang="pl" hreflang="pl" data-title="Programowanie komputerów" data-language-autonym="Polski" data-language-local-name="Polish" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_de_computadores" title="Programação de computadores – Portuguese" lang="pt" hreflang="pt" data-title="Programação de computadores" data-language-autonym="Português" data-language-local-name="Portuguese" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-kaa mw-list-item"><a href="https://kaa.wikipedia.org/wiki/Programmalast%C4%B1r%C4%B1w" title="Programmalastırıw – Kara-Kalpak" lang="kaa" hreflang="kaa" data-title="Programmalastırıw" data-language-autonym="Qaraqalpaqsha" data-language-local-name="Kara-Kalpak" class="interlanguage-link-target"><span>Qaraqalpaqsha</span></a></li><li class="interlanguage-link interwiki-ro mw-list-item"><a href="https://ro.wikipedia.org/wiki/Programare" title="Programare – Romanian" lang="ro" hreflang="ro" data-title="Programare" data-language-autonym="Română" data-language-local-name="Romanian" class="interlanguage-link-target"><span>Română</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" title="Программирование – Russian" lang="ru" hreflang="ru" data-title="Программирование" data-language-autonym="Русский" data-language-local-name="Russian" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-sq mw-list-item"><a href="https://sq.wikipedia.org/wiki/Programimi_kompjuterik" title="Programimi kompjuterik – Albanian" lang="sq" hreflang="sq" data-title="Programimi kompjuterik" data-language-autonym="Shqip" data-language-local-name="Albanian" class="interlanguage-link-target"><span>Shqip</span></a></li><li class="interlanguage-link interwiki-si mw-list-item"><a href="https://si.wikipedia.org/wiki/%E0%B6%B4%E0%B6%BB%E0%B7%92%E0%B6%9C%E0%B6%AB%E0%B6%9A_%E0%B6%9A%E0%B7%8A%E2%80%8D%E0%B6%BB%E0%B6%B8%E0%B6%BD%E0%B7%9A%E0%B6%9B%E0%B6%9A%E0%B6%BB%E0%B6%AB%E0%B6%BA" title="පරිගණක ක්රමලේඛකරණය – Sinhala" lang="si" hreflang="si" data-title="පරිගණක ක්රමලේඛකරණය" data-language-autonym="සිංහල" data-language-local-name="Sinhala" class="interlanguage-link-target"><span>සිංහල</span></a></li><li class="interlanguage-link interwiki-simple mw-list-item"><a href="https://simple.wikipedia.org/wiki/Computer_programming" title="Computer programming – Simple English" lang="en-simple" hreflang="en-simple" data-title="Computer programming" data-language-autonym="Simple English" data-language-local-name="Simple English" class="interlanguage-link-target"><span>Simple English</span></a></li><li class="interlanguage-link interwiki-sk mw-list-item"><a href="https://sk.wikipedia.org/wiki/Programovanie_(informatika)" title="Programovanie (informatika) – Slovak" lang="sk" hreflang="sk" data-title="Programovanie (informatika)" data-language-autonym="Slovenčina" data-language-local-name="Slovak" class="interlanguage-link-target"><span>Slovenčina</span></a></li><li class="interlanguage-link interwiki-sl mw-list-item"><a href="https://sl.wikipedia.org/wiki/Ra%C4%8Dunalni%C5%A1ko_programiranje" title="Računalniško programiranje – Slovenian" lang="sl" hreflang="sl" data-title="Računalniško programiranje" data-language-autonym="Slovenščina" data-language-local-name="Slovenian" class="interlanguage-link-target"><span>Slovenščina</span></a></li><li class="interlanguage-link interwiki-ckb mw-list-item"><a href="https://ckb.wikipedia.org/wiki/%D8%A8%DB%95%D8%B1%D9%86%D8%A7%D9%85%DB%95%D8%B3%D8%A7%D8%B2%DB%8C" title="بەرنامەسازی – Central Kurdish" lang="ckb" hreflang="ckb" data-title="بەرنامەسازی" data-language-autonym="کوردی" data-language-local-name="Central Kurdish" class="interlanguage-link-target"><span>کوردی</span></a></li><li class="interlanguage-link interwiki-sr mw-list-item"><a href="https://sr.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%B8%D1%80%D0%B0%D1%9A%D0%B5" title="Програмирање – Serbian" lang="sr" hreflang="sr" data-title="Програмирање" data-language-autonym="Српски / srpski" data-language-local-name="Serbian" class="interlanguage-link-target"><span>Српски / srpski</span></a></li><li class="interlanguage-link interwiki-sh mw-list-item"><a href="https://sh.wikipedia.org/wiki/Programiranje" title="Programiranje – Serbo-Croatian" lang="sh" hreflang="sh" data-title="Programiranje" data-language-autonym="Srpskohrvatski / српскохрватски" data-language-local-name="Serbo-Croatian" class="interlanguage-link-target"><span>Srpskohrvatski / српскохрватски</span></a></li><li class="interlanguage-link interwiki-fi mw-list-item"><a href="https://fi.wikipedia.org/wiki/Ohjelmointi" title="Ohjelmointi – Finnish" lang="fi" hreflang="fi" data-title="Ohjelmointi" data-language-autonym="Suomi" data-language-local-name="Finnish" class="interlanguage-link-target"><span>Suomi</span></a></li><li class="interlanguage-link interwiki-sv mw-list-item"><a href="https://sv.wikipedia.org/wiki/Programmering" title="Programmering – Swedish" lang="sv" hreflang="sv" data-title="Programmering" data-language-autonym="Svenska" data-language-local-name="Swedish" class="interlanguage-link-target"><span>Svenska</span></a></li><li class="interlanguage-link interwiki-tl mw-list-item"><a href="https://tl.wikipedia.org/wiki/Pagpoprograma_sa_kompyuter" title="Pagpoprograma sa kompyuter – Tagalog" lang="tl" hreflang="tl" data-title="Pagpoprograma sa kompyuter" data-language-autonym="Tagalog" data-language-local-name="Tagalog" class="interlanguage-link-target"><span>Tagalog</span></a></li><li class="interlanguage-link interwiki-ta mw-list-item"><a href="https://ta.wikipedia.org/wiki/%E0%AE%95%E0%AE%A3%E0%AE%BF%E0%AE%A9%E0%AE%BF_%E0%AE%A8%E0%AE%BF%E0%AE%B0%E0%AE%B2%E0%AE%BE%E0%AE%95%E0%AF%8D%E0%AE%95%E0%AE%AE%E0%AF%8D" title="கணினி நிரலாக்கம் – Tamil" lang="ta" hreflang="ta" data-title="கணினி நிரலாக்கம்" data-language-autonym="தமிழ்" data-language-local-name="Tamil" class="interlanguage-link-target"><span>தமிழ்</span></a></li><li class="interlanguage-link interwiki-th mw-list-item"><a href="https://th.wikipedia.org/wiki/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80%E0%B8%82%E0%B8%B5%E0%B8%A2%E0%B8%99%E0%B9%82%E0%B8%9B%E0%B8%A3%E0%B9%81%E0%B8%81%E0%B8%A3%E0%B8%A1%E0%B8%84%E0%B8%AD%E0%B8%A1%E0%B8%9E%E0%B8%B4%E0%B8%A7%E0%B9%80%E0%B8%95%E0%B8%AD%E0%B8%A3%E0%B9%8C" title="การเขียนโปรแกรมคอมพิวเตอร์ – Thai" lang="th" hreflang="th" data-title="การเขียนโปรแกรมคอมพิวเตอร์" data-language-autonym="ไทย" data-language-local-name="Thai" class="interlanguage-link-target"><span>ไทย</span></a></li><li class="interlanguage-link interwiki-tg mw-list-item"><a href="https://tg.wikipedia.org/wiki/%D0%91%D0%B0%D1%80%D0%BD%D0%BE%D0%BC%D0%B0%D0%BD%D0%B0%D0%B2%D0%B8%D1%81%D3%A3" title="Барноманависӣ – Tajik" lang="tg" hreflang="tg" data-title="Барноманависӣ" data-language-autonym="Тоҷикӣ" data-language-local-name="Tajik" class="interlanguage-link-target"><span>Тоҷикӣ</span></a></li><li class="interlanguage-link interwiki-tr mw-list-item"><a href="https://tr.wikipedia.org/wiki/Programlama" title="Programlama – Turkish" lang="tr" hreflang="tr" data-title="Programlama" data-language-autonym="Türkçe" data-language-local-name="Turkish" class="interlanguage-link-target"><span>Türkçe</span></a></li><li class="interlanguage-link interwiki-tk mw-list-item"><a href="https://tk.wikipedia.org/wiki/Programmirleme" title="Programmirleme – Turkmen" lang="tk" hreflang="tk" data-title="Programmirleme" data-language-autonym="Türkmençe" data-language-local-name="Turkmen" class="interlanguage-link-target"><span>Türkmençe</span></a></li><li class="interlanguage-link interwiki-tw mw-list-item"><a href="https://tw.wikipedia.org/wiki/K%C9%94mputa_so_dwumadi_ahorow_(Computer_programming)" title="Kɔmputa so dwumadi ahorow (Computer programming) – Twi" lang="tw" hreflang="tw" data-title="Kɔmputa so dwumadi ahorow (Computer programming)" data-language-autonym="Twi" data-language-local-name="Twi" class="interlanguage-link-target"><span>Twi</span></a></li><li class="interlanguage-link interwiki-bug mw-list-item"><a href="https://bug.wikipedia.org/wiki/%E1%A8%85%E1%A8%94_%E1%A8%84%E1%A8%9B%E1%A8%91%E1%A8%9A%E1%A8%81%E1%A8%9B%E1%A8%91%E1%A8%86%E1%A8%97" title="ᨅᨔ ᨄᨛᨑᨚᨁᨛᨑᨆᨗ – Buginese" lang="bug" hreflang="bug" data-title="ᨅᨔ ᨄᨛᨑᨚᨁᨛᨑᨆᨗ" data-language-autonym="Basa Ugi" data-language-local-name="Buginese" class="interlanguage-link-target"><span>Basa Ugi</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F" title="Програмування – Ukrainian" lang="uk" hreflang="uk" data-title="Програмування" data-language-autonym="Українська" data-language-local-name="Ukrainian" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-ur mw-list-item"><a href="https://ur.wikipedia.org/wiki/%DA%A9%D9%85%D9%BE%DB%8C%D9%88%D9%B9%D8%B1_%D9%BE%D8%B1%D9%88%DA%AF%D8%B1%D8%A7%D9%85%D9%86%DA%AF" title="کمپیوٹر پروگرامنگ – Urdu" lang="ur" hreflang="ur" data-title="کمپیوٹر پروگرامنگ" data-language-autonym="اردو" data-language-local-name="Urdu" class="interlanguage-link-target"><span>اردو</span></a></li><li class="interlanguage-link interwiki-vi mw-list-item"><a href="https://vi.wikipedia.org/wiki/L%E1%BA%ADp_tr%C3%ACnh_m%C3%A1y_t%C3%ADnh" title="Lập trình máy tính – Vietnamese" lang="vi" hreflang="vi" data-title="Lập trình máy tính" data-language-autonym="Tiếng Việt" data-language-local-name="Vietnamese" class="interlanguage-link-target"><span>Tiếng Việt</span></a></li><li class="interlanguage-link interwiki-wuu mw-list-item"><a href="https://wuu.wikipedia.org/wiki/%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1" title="程序设计 – Wu" lang="wuu" hreflang="wuu" data-title="程序设计" data-language-autonym="吴语" data-language-local-name="Wu" class="interlanguage-link-target"><span>吴语</span></a></li><li class="interlanguage-link interwiki-yi mw-list-item"><a href="https://yi.wikipedia.org/wiki/%D7%A7%D7%90%D7%9E%D7%A4%D7%99%D7%95%D7%98%D7%A2%D7%A8_%D7%A4%D7%A8%D7%90%D7%92%D7%A8%D7%90%D7%9E%D7%99%D7%A8%D7%9F" title="קאמפיוטער פראגראמירן – Yiddish" lang="yi" hreflang="yi" data-title="קאמפיוטער פראגראמירן" data-language-autonym="ייִדיש" data-language-local-name="Yiddish" class="interlanguage-link-target"><span>ייִדיש</span></a></li><li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://zh-yue.wikipedia.org/wiki/%E9%9B%BB%E8%85%A6%E7%A8%8B%E5%BC%8F%E7%B7%A8%E5%AF%AB" title="電腦程式編寫 – Cantonese" lang="yue" hreflang="yue" data-title="電腦程式編寫" data-language-autonym="粵語" data-language-local-name="Cantonese" class="interlanguage-link-target"><span>粵語</span></a></li><li class="interlanguage-link interwiki-diq mw-list-item"><a href="https://diq.wikipedia.org/wiki/Programnay%C4%B1%C5%9F" title="Programnayış – Zazaki" lang="diq" hreflang="diq" data-title="Programnayış" data-language-autonym="Zazaki" data-language-local-name="Zazaki" class="interlanguage-link-target"><span>Zazaki</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1" title="程序设计 – Chinese" lang="zh" hreflang="zh" data-title="程序设计" data-language-autonym="中文" data-language-local-name="Chinese" class="interlanguage-link-target"><span>中文</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q80006#sitelinks-wikipedia" title="Edit interlanguage links" class="wbc-editpage">Edit links</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Computer_programming" title="View the content page [c]" accesskey="c"><span>Article</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Talk:Computer_programming" rel="discussion" title="Discuss improvements to the content page [t]" accesskey="t"><span>Talk</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Computer_programming"><span>Read</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Computer_programming&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Computer_programming&action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Computer_programming"><span>Read</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Computer_programming&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Computer_programming&action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/Computer_programming" title="List of all English Wikipedia pages containing links to this page [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/Computer_programming" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_Upload_Wizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q"><span>Special pages</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Computer_programming&oldid=1259007373" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Computer_programming&action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&page=Computer_programming&id=1259007373&wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_programming"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComputer_programming"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&page=Computer_programming&action=show-download-screen" title="Download this page as a PDF file"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Computer_programming&printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="wb-otherproject-link wb-otherproject-commons mw-list-item"><a href="https://commons.wikimedia.org/wiki/Category:Computer_programming" hreflang="en"><span>Wikimedia Commons</span></a></li><li class="wb-otherproject-link wb-otherproject-wikibooks mw-list-item"><a href="https://en.wikibooks.org/wiki/Computer_Programming" hreflang="en"><span>Wikibooks</span></a></li><li class="wb-otherproject-link wb-otherproject-wikiquote mw-list-item"><a href="https://en.wikiquote.org/wiki/Programming" hreflang="en"><span>Wikiquote</span></a></li><li class="wb-otherproject-link wb-otherproject-wikiversity mw-list-item"><a href="https://en.wikiversity.org/wiki/Introduction_to_Programming" hreflang="en"><span>Wikiversity</span></a></li><li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q80006" title="Structured data on this page hosted by Wikidata [g]" accesskey="g"><span>Wikidata item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From Wikipedia, the free encyclopedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><div class="shortdescription nomobile noexcerpt noprint searchaux" style="display:none">Process to create executable computer programs</div> <p class="mw-empty-elt"> </p> <style data-mw-deduplicate="TemplateStyles:r1129693374">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style><style data-mw-deduplicate="TemplateStyles:r1246091330">.mw-parser-output .sidebar{width:22em;float:right;clear:right;margin:0.5em 0 1em 1em;background:var(--background-color-neutral-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);padding:0.2em;text-align:center;line-height:1.4em;font-size:88%;border-collapse:collapse;display:table}body.skin-minerva .mw-parser-output .sidebar{display:table!important;float:right!important;margin:0.5em 0 1em 1em!important}.mw-parser-output .sidebar-subgroup{width:100%;margin:0;border-spacing:0}.mw-parser-output .sidebar-left{float:left;clear:left;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-none{float:none;clear:both;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-outer-title{padding:0 0.4em 0.2em;font-size:125%;line-height:1.2em;font-weight:bold}.mw-parser-output .sidebar-top-image{padding:0.4em}.mw-parser-output .sidebar-top-caption,.mw-parser-output .sidebar-pretitle-with-top-image,.mw-parser-output .sidebar-caption{padding:0.2em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-pretitle{padding:0.4em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-title,.mw-parser-output .sidebar-title-with-pretitle{padding:0.2em 0.8em;font-size:145%;line-height:1.2em}.mw-parser-output .sidebar-title-with-pretitle{padding:0.1em 0.4em}.mw-parser-output .sidebar-image{padding:0.2em 0.4em 0.4em}.mw-parser-output .sidebar-heading{padding:0.1em 0.4em}.mw-parser-output .sidebar-content{padding:0 0.5em 0.4em}.mw-parser-output .sidebar-content-with-subgroup{padding:0.1em 0.4em 0.2em}.mw-parser-output .sidebar-above,.mw-parser-output .sidebar-below{padding:0.3em 0.8em;font-weight:bold}.mw-parser-output .sidebar-collapse .sidebar-above,.mw-parser-output .sidebar-collapse .sidebar-below{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.mw-parser-output .sidebar-navbar{text-align:right;font-size:115%;padding:0 0.4em 0.4em}.mw-parser-output .sidebar-list-title{padding:0 0.4em;text-align:left;font-weight:bold;line-height:1.6em;font-size:105%}.mw-parser-output .sidebar-list-title-c{padding:0 0.4em;text-align:center;margin:0 3.3em}@media(max-width:640px){body.mediawiki .mw-parser-output .sidebar{width:100%!important;clear:both;float:none!important;margin-left:0!important;margin-right:0!important}}body.skin--responsive .mw-parser-output .sidebar a>img{max-width:none!important}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media print{body.ns-0 .mw-parser-output .sidebar{display:none!important}}</style><table class="sidebar sidebar-collapse nomobile"><tbody><tr><td class="sidebar-pretitle">Part of a series on</td></tr><tr><th class="sidebar-title-with-pretitle"><a href="/wiki/Software_development" title="Software development">Software development</a></th></tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Core activities</div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Data_modeling" title="Data modeling">Data modeling</a></li> <li><a href="/wiki/Software_development_process" title="Software development process">Processes</a></li> <li><a href="/wiki/Requirements_analysis" title="Requirements analysis">Requirements</a></li> <li><a href="/wiki/Software_design" title="Software design">Design</a></li> <li><a href="/wiki/Software_construction" title="Software construction">Construction</a></li> <li><a href="/wiki/Software_engineering" title="Software engineering">Engineering</a></li> <li><a href="/wiki/Software_testing" title="Software testing">Testing</a></li> <li><a href="/wiki/Debugging" title="Debugging">Debugging</a></li> <li><a href="/wiki/Software_deployment" title="Software deployment">Deployment</a></li> <li><a href="/wiki/Software_maintenance" title="Software maintenance">Maintenance</a></li></ul></div></div></td> </tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Paradigms and models</div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Agile_software_development" title="Agile software development">Agile</a></li> <li><a href="/wiki/Cleanroom_software_engineering" title="Cleanroom software engineering">Cleanroom</a></li> <li><a href="/wiki/Incremental_build_model" title="Incremental build model">Incremental</a></li> <li><a href="/wiki/Software_prototyping" title="Software prototyping">Prototyping</a></li> <li><a href="/wiki/Spiral_model" title="Spiral model">Spiral</a></li> <li><a href="/wiki/V-model_(software_development)" title="V-model (software development)">V model</a></li> <li><a href="/wiki/Waterfall_model" title="Waterfall model">Waterfall</a></li></ul></div></div></td> </tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)"><a href="/wiki/Software_development_methodology" class="mw-redirect" title="Software development methodology">Methodologies</a> and frameworks</div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Adaptive_software_development" title="Adaptive software development">ASD</a></li> <li><a href="/wiki/DevOps" title="DevOps">DevOps</a></li> <li><a href="/wiki/Disciplined_agile_delivery" title="Disciplined agile delivery">DAD</a></li> <li><a href="/wiki/Dynamic_systems_development_method" title="Dynamic systems development method">DSDM</a></li> <li><a href="/wiki/Feature-driven_development" title="Feature-driven development">FDD</a></li> <li><a href="/wiki/Iterative_and_incremental_development" title="Iterative and incremental development">IID</a></li> <li><a href="/wiki/Kanban_(development)" title="Kanban (development)">Kanban</a></li> <li><a href="/wiki/Lean_software_development" title="Lean software development">Lean SD</a></li> <li><a href="/wiki/Scrum_(software_development)#Large-scale_Scrum" title="Scrum (software development)">LeSS</a></li> <li><a href="/wiki/Model-driven_development" class="mw-redirect" title="Model-driven development">MDD</a></li> <li><a href="/wiki/Microsoft_Solutions_Framework" title="Microsoft Solutions Framework">MSF</a></li> <li><a href="/wiki/Personal_software_process" title="Personal software process">PSP</a></li> <li><a href="/wiki/Rapid_application_development" title="Rapid application development">RAD</a></li> <li><a href="/wiki/Rational_Unified_Process" class="mw-redirect" title="Rational Unified Process">RUP</a></li> <li><a href="/wiki/Scaled_agile_framework" title="Scaled agile framework">SAFe</a></li> <li><a href="/wiki/Scrum_(software_development)" title="Scrum (software development)">Scrum</a></li> <li><a href="/wiki/SEMAT" title="SEMAT">SEMAT</a></li> <li><a href="/wiki/Test-driven_development" title="Test-driven development">TDD</a></li> <li><a href="/wiki/Team_software_process" title="Team software process">TSP</a></li> <li><a href="/wiki/Unified_Process" class="mw-redirect" title="Unified Process">UP</a></li> <li><a href="/wiki/Extreme_programming" title="Extreme programming">XP</a></li></ul></div></div></td> </tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Supporting disciplines</div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Software_configuration_management" title="Software configuration management">Configuration management</a></li> <li><a href="/wiki/Deployment_management#Computer_science" title="Deployment management"> Deployment management</a></li> <li><a href="/wiki/Software_documentation" title="Software documentation">Documentation</a></li> <li><a href="/wiki/Software_quality_assurance" title="Software quality assurance">Software quality assurance</a></li> <li><a href="/wiki/Software_project_management" title="Software project management">Project management</a></li> <li><a href="/wiki/User_experience" title="User experience">User experience</a></li></ul></div></div></td> </tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Practices</div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Acceptance_test%E2%80%93driven_development" class="mw-redirect" title="Acceptance test–driven development">ATDD</a></li> <li><a href="/wiki/Behavior-driven_development" title="Behavior-driven development">BDD</a></li> <li><a href="/wiki/Extreme_programming_practices#Collective_code_ownership" title="Extreme programming practices">CCO</a></li> <li><a href="/wiki/Continuous_integration" title="Continuous integration">CI</a></li> <li><a href="/wiki/Continuous_delivery" title="Continuous delivery">CD</a></li> <li><a href="/wiki/Domain-driven_design" title="Domain-driven design">DDD</a></li> <li><a href="/wiki/Pair_programming" title="Pair programming">PP</a></li> <li><a href="/wiki/Specification_by_example" title="Specification by example">SBE</a></li> <li><a href="/wiki/Stand-up_meeting" title="Stand-up meeting">Stand-up</a></li> <li><a href="/wiki/Test-driven_development" title="Test-driven development">TDD</a></li></ul></div></div></td> </tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)"><a href="/wiki/Programming_tool" title="Programming tool">Tools</a></div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Compiler" title="Compiler">Compiler</a></li> <li><a href="/wiki/Debugger" title="Debugger">Debugger</a></li> <li><a href="/wiki/Profiling_(computer_programming)" title="Profiling (computer programming)">Profiler</a></li> <li><a href="/wiki/Graphical_user_interface_builder" title="Graphical user interface builder">GUI designer</a></li> <li><a href="/wiki/UML_tool" title="UML tool">UML Modeling</a></li> <li><a href="/wiki/Integrated_development_environment" title="Integrated development environment">IDE</a></li> <li><a href="/wiki/Build_automation" title="Build automation">Build automation</a></li> <li><a href="/wiki/Application-release_automation" title="Application-release automation">Release automation</a></li> <li><a href="/wiki/Infrastructure_as_code" title="Infrastructure as code">Infrastructure as code</a></li></ul></div></div></td> </tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Standards and bodies of knowledge</div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Capability_Maturity_Model_Integration" title="Capability Maturity Model Integration">CMMI</a></li> <li><a href="/wiki/IEEE_Standards_Association" title="IEEE Standards Association">IEEE standards</a></li> <li><a href="/wiki/ISO_9001" class="mw-redirect" title="ISO 9001">ISO 9001</a></li> <li><a href="/wiki/ISO/IEC_JTC_1/SC_7" title="ISO/IEC JTC 1/SC 7">ISO/IEC standards</a></li> <li><a href="/wiki/Project_Management_Body_of_Knowledge" title="Project Management Body of Knowledge">PMBOK</a></li> <li><a href="/wiki/Software_Engineering_Body_of_Knowledge" title="Software Engineering Body of Knowledge">SWEBOK</a></li> <li><a href="/wiki/ITIL" title="ITIL">ITIL</a></li> <li><a href="/wiki/International_Requirements_Engineering_Board" title="International Requirements Engineering Board">IREB</a></li> <li><a href="/wiki/Object_Management_Group" title="Object Management Group">OMG</a></li></ul></div></div></td> </tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Glossaries</div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Glossary_of_artificial_intelligence" title="Glossary of artificial intelligence">Artificial intelligence</a></li> <li><a href="/wiki/Glossary_of_computer_science" title="Glossary of computer science">Computer science</a></li> <li><a href="/wiki/Glossary_of_electrical_and_electronics_engineering" title="Glossary of electrical and electronics engineering">Electrical and electronics engineering</a></li></ul></div></div></td> </tr><tr><td class="sidebar-content"> <div class="sidebar-list mw-collapsible mw-collapsed"><div class="sidebar-list-title" style="color: var(--color-base)">Outlines</div><div class="sidebar-list-content mw-collapsible-content hlist"> <ul><li><a href="/wiki/Outline_of_software_development" title="Outline of software development">Outline of software development</a></li></ul></div></div></td> </tr><tr><td class="sidebar-navbar"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1239400231">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}</style><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Software_development_process" title="Template:Software development process"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Software_development_process" title="Template talk:Software development process"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Software_development_process" title="Special:EditPage/Template:Software development process"><abbr title="Edit this template">e</abbr></a></li></ul></div></td></tr></tbody></table> <p><b>Computer programming</b> or <b>coding</b> is the composition of sequences of instructions, called <a href="/wiki/Computer_program" title="Computer program">programs</a>, that <a href="/wiki/Computer" title="Computer">computers</a> can follow to perform tasks.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> It involves designing and implementing <a href="/wiki/Algorithm" title="Algorithm">algorithms</a>, step-by-step specifications of procedures, by writing <a href="/wiki/Source_code" title="Source code">code</a> in one or more <a href="/wiki/Programming_language" title="Programming language">programming languages</a>. Programmers typically use <a href="/wiki/High-level_programming_language" title="High-level programming language">high-level programming languages</a> that are more easily intelligible to humans than <a href="/wiki/Machine_code" title="Machine code">machine code</a>, which is directly executed by the <a href="/wiki/Central_processing_unit" title="Central processing unit">central processing unit</a>. Proficient programming usually requires expertise in several different subjects, including knowledge of the <a href="/wiki/Domain_(software_engineering)" title="Domain (software engineering)">application domain</a>, details of programming languages and generic code <a href="/wiki/Library_(computing)" title="Library (computing)">libraries</a>, specialized algorithms, and <a href="/wiki/Logic#Formal_logic" title="Logic">formal logic</a>. </p><p>Auxiliary tasks accompanying and related to programming include <a href="/wiki/Requirements_analysis" title="Requirements analysis">analyzing requirements</a>, <a href="/wiki/Software_testing" title="Software testing">testing</a>, <a href="/wiki/Debugging" title="Debugging">debugging</a> (investigating and fixing problems), implementation of <a href="/wiki/Build_automation" title="Build automation">build systems</a>, and management of derived <a href="/wiki/Artifact_(software_development)" title="Artifact (software development)">artifacts</a>, such as programs' <a href="/wiki/Machine_code" title="Machine code">machine code</a>. While these are sometimes considered programming, often the term <i><a href="/wiki/Software_development" title="Software development">software development</a></i> is used for this larger overall process – with the terms <i>programming</i>, <i>implementation</i>, and <i>coding</i> reserved for the writing and editing of code per se. Sometimes software development is known as <i><a href="/wiki/Software_engineering" title="Software engineering">software engineering</a></i>, especially when it employs <a href="/wiki/Formal_methods" title="Formal methods">formal methods</a> or follows an <a href="/wiki/Engineering_design_process" title="Engineering design process">engineering design process</a>. </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="History">History</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=1" title="Edit section: History"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Ada_lovelace.jpg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Ada_lovelace.jpg/220px-Ada_lovelace.jpg" decoding="async" width="220" height="303" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/0/0f/Ada_lovelace.jpg/330px-Ada_lovelace.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/0/0f/Ada_lovelace.jpg 2x" data-file-width="418" data-file-height="575" /></a><figcaption><a href="/wiki/Ada_Lovelace" title="Ada Lovelace">Ada Lovelace</a>, whose notes were added to the end of <a href="/wiki/Luigi_Menabrea" class="mw-redirect" title="Luigi Menabrea">Luigi Menabrea</a>'s paper included the first <a href="/wiki/Algorithm" title="Algorithm">algorithm</a> designed for processing by <a href="/wiki/Charles_Babbage" title="Charles Babbage">Charles Babbage</a>'s <a href="/wiki/Analytical_Engine" class="mw-redirect" title="Analytical Engine">Analytical Engine</a>. She is often recognized as history's first computer programmer.</figcaption></figure> <style data-mw-deduplicate="TemplateStyles:r1236090951">.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}</style><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/wiki/Computer_program#History" title="Computer program">Computer program § History</a>, <a href="/wiki/Programmer#History" title="Programmer">Programmer § History</a>, and <a href="/wiki/History_of_programming_languages" title="History of programming languages">History of programming languages</a></div> <p><a href="/wiki/Program_(machine)" title="Program (machine)">Programmable devices</a> have existed for centuries. As early as the 9th century, a programmable <a href="/wiki/Music_sequencer" title="Music sequencer">music sequencer</a> was invented by the Persian <a href="/wiki/Banu_Musa" class="mw-redirect" title="Banu Musa">Banu Musa</a> brothers, who described an automated mechanical <a href="/wiki/Flute" title="Flute">flute</a> player in the <i><a href="/wiki/Book_of_Ingenious_Devices" title="Book of Ingenious Devices">Book of Ingenious Devices</a></i>.<sup id="cite_ref-Koetsier_3-0" class="reference"><a href="#cite_note-Koetsier-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> In 1206, the Arab engineer <a href="/wiki/Al-Jazari" class="mw-redirect" title="Al-Jazari">Al-Jazari</a> invented a programmable <a href="/wiki/Drum_machine" title="Drum machine">drum machine</a> where a musical mechanical <a href="/wiki/Automaton" title="Automaton">automaton</a> could be made to play different rhythms and drum patterns, via pegs and <a href="/wiki/Cam_(mechanism)" title="Cam (mechanism)">cams</a>.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-Sharkey_6-0" class="reference"><a href="#cite_note-Sharkey-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> In 1801, the <a href="/wiki/Jacquard_loom" class="mw-redirect" title="Jacquard loom">Jacquard loom</a> could produce entirely different weaves by changing the "program" – a series of <a href="/wiki/Card_stock" title="Card stock">pasteboard</a> cards with holes punched in them. </p><p><a href="/wiki/Code-breaking" class="mw-redirect" title="Code-breaking">Code-breaking</a> algorithms have also existed for centuries. In the 9th century, the <a href="/wiki/Mathematics_in_medieval_Islam" class="mw-redirect" title="Mathematics in medieval Islam">Arab mathematician</a> <a href="/wiki/Al-Kindi" title="Al-Kindi">Al-Kindi</a> described a <a href="/wiki/Cryptographic" class="mw-redirect" title="Cryptographic">cryptographic</a> algorithm for deciphering encrypted code, in <i>A Manuscript on Deciphering Cryptographic Messages</i>. He gave the first description of <a href="/wiki/Cryptanalysis" title="Cryptanalysis">cryptanalysis</a> by <a href="/wiki/Frequency_analysis" title="Frequency analysis">frequency analysis</a>, the earliest code-breaking algorithm.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> </p><p>The first <a href="/wiki/Computer_program" title="Computer program">computer program</a> is generally dated to 1843 when mathematician <a href="/wiki/Ada_Lovelace" title="Ada Lovelace">Ada Lovelace</a> published an <a href="/wiki/Algorithm" title="Algorithm">algorithm</a> to calculate a sequence of <a href="/wiki/Bernoulli_numbers" class="mw-redirect" title="Bernoulli numbers">Bernoulli numbers</a>, intended to be carried out by <a href="/wiki/Charles_Babbage" title="Charles Babbage">Charles Babbage</a>'s <a href="/wiki/Analytical_Engine" class="mw-redirect" title="Analytical Engine">Analytical Engine</a>.<sup id="cite_ref-IEEE_8-0" class="reference"><a href="#cite_note-IEEE-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> However, Charles Babbage himself had written a program for the AE in 1837.<sup id="cite_ref-IEEE2021_9-0" class="reference"><a href="#cite_note-IEEE2021-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-IEEE2024_10-0" class="reference"><a href="#cite_note-IEEE2024-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> </p> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:PunchCardDecks.agr.jpg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/8/86/PunchCardDecks.agr.jpg/220px-PunchCardDecks.agr.jpg" decoding="async" width="220" height="244" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/8/86/PunchCardDecks.agr.jpg/330px-PunchCardDecks.agr.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/8/86/PunchCardDecks.agr.jpg/440px-PunchCardDecks.agr.jpg 2x" data-file-width="1401" data-file-height="1554" /></a><figcaption>Data and instructions were once stored on external <a href="/wiki/Punched_card" title="Punched card">punched cards</a>, which were kept in order and arranged in program decks.</figcaption></figure> <p>In the 1880s, <a href="/wiki/Herman_Hollerith" title="Herman Hollerith">Herman Hollerith</a> invented the concept of storing <i>data</i> in machine-readable form.<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> Later a <a href="/wiki/Plugboard" title="Plugboard">control panel</a> (plug board) added to his 1906 Type I Tabulator allowed it to be programmed for different jobs, and by the late 1940s, <a href="/wiki/Unit_record_equipment" title="Unit record equipment">unit record equipment</a> such as the <a href="/wiki/IBM_602" title="IBM 602">IBM 602</a> and <a href="/wiki/IBM_604" title="IBM 604">IBM 604</a>, were programmed by control panels in a similar way, as were the first <a href="/wiki/Electronic_computer" class="mw-redirect" title="Electronic computer">electronic computers</a>. However, with the concept of the <a href="/wiki/Stored-program_computer" title="Stored-program computer">stored-program computer</a> introduced in 1949, both programs and data were stored and manipulated in the same way in <a href="/wiki/Computer_memory" title="Computer memory">computer memory</a>.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Machine_language">Machine language</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=2" title="Edit section: Machine language"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Machine_code" title="Machine code">Machine code</a> was the language of early programs, written in the <a href="/wiki/Instruction_set_architecture" title="Instruction set architecture">instruction set</a> of the particular machine, often in <a href="/wiki/Binary_numeral_system" class="mw-redirect" title="Binary numeral system">binary</a> notation. <a href="/wiki/Assembly_language" title="Assembly language">Assembly languages</a> were soon developed that let the programmer specify instructions in a text format (e.g., ADD X, TOTAL), with abbreviations for each operation code and meaningful names for specifying addresses. However, because an assembly language is little more than a different notation for a machine language, two machines with <a href="/wiki/Comparison_of_instruction_set_architectures" title="Comparison of instruction set architectures">different instruction sets</a> also have different assembly languages. </p> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:IBM402plugboard.Shrigley.wireside.jpg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/b/b7/IBM402plugboard.Shrigley.wireside.jpg/220px-IBM402plugboard.Shrigley.wireside.jpg" decoding="async" width="220" height="165" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/b/b7/IBM402plugboard.Shrigley.wireside.jpg/330px-IBM402plugboard.Shrigley.wireside.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/b/b7/IBM402plugboard.Shrigley.wireside.jpg/440px-IBM402plugboard.Shrigley.wireside.jpg 2x" data-file-width="1024" data-file-height="768" /></a><figcaption>Wired <a href="/wiki/Plugboard" title="Plugboard">control panel</a> for an <a href="/wiki/IBM_402_Accounting_Machine" class="mw-redirect" title="IBM 402 Accounting Machine">IBM 402 Accounting Machine</a>. Wires connect pulse streams from the card reader to counters and other internal logic and ultimately to the printer.</figcaption></figure> <div class="mw-heading mw-heading3"><h3 id="Compiler_languages">Compiler languages</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=3" title="Edit section: Compiler languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/wiki/Compiler" title="Compiler">Compiler</a></div> <p><a href="/wiki/High-level_language" class="mw-redirect" title="High-level language">High-level languages</a> made the process of developing a program simpler and more understandable, and less bound to the underlying <a href="/wiki/Computer_hardware" title="Computer hardware">hardware</a>. The first compiler related tool, the <a href="/wiki/A-0_System" title="A-0 System">A-0 System</a>, was developed in 1952<sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> by <a href="/wiki/Grace_Hopper" title="Grace Hopper">Grace Hopper</a>, who also coined the term 'compiler'.<sup id="cite_ref-wikles1968_14-0" class="reference"><a href="#cite_note-wikles1968-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-computerhistory.org_15-0" class="reference"><a href="#cite_note-computerhistory.org-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> <a href="/wiki/FORTRAN" class="mw-redirect" title="FORTRAN">FORTRAN</a>, the first widely used high-level language to have a functional implementation, came out in 1957,<sup id="cite_ref-bergstein_16-0" class="reference"><a href="#cite_note-bergstein-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> and many other languages were soon developed—in particular, <a href="/wiki/COBOL" title="COBOL">COBOL</a> aimed at commercial data processing, and <a href="/wiki/Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a> for computer research. </p><p>These compiled languages allow the programmer to write programs in terms that are syntactically richer, and more capable of <a href="/wiki/Abstraction_(computer_science)" title="Abstraction (computer science)">abstracting</a> the code, making it easy to target varying machine instruction sets via compilation declarations and <a href="/wiki/Heuristic_(computer_science)" title="Heuristic (computer science)">heuristics</a>. Compilers harnessed the power of computers to make programming easier<sup id="cite_ref-bergstein_16-1" class="reference"><a href="#cite_note-bergstein-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> by allowing programmers to specify calculations by entering a formula using <a href="/wiki/Infix_notation" title="Infix notation">infix notation</a>. </p> <div class="mw-heading mw-heading3"><h3 id="Source_code_entry">Source code entry</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=4" title="Edit section: Source code entry"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/wiki/Computer_programming_in_the_punched_card_era" title="Computer programming in the punched card era">Computer programming in the punched card era</a></div> <p>Programs were mostly entered using punched cards or <a href="/wiki/Paper_tape" class="mw-redirect" title="Paper tape">paper tape</a>. By the late 1960s, <a href="/wiki/Data_storage_device" class="mw-redirect" title="Data storage device">data storage devices</a> and <a href="/wiki/Computer_terminal" title="Computer terminal">computer terminals</a> became inexpensive enough that programs could be created by typing directly into the computers. <a href="/wiki/Text_editor" title="Text editor">Text editors</a> were also developed that allowed changes and corrections to be made much more easily than with <a href="/wiki/Punched_card_sorter" title="Punched card sorter">punched cards</a>. </p> <div class="mw-heading mw-heading2"><h2 id="Modern_programming">Modern programming</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=5" title="Edit section: Modern programming"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-heading mw-heading3"><h3 id="Quality_requirements">Quality requirements</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=6" title="Edit section: Quality requirements"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Software_quality" title="Software quality">Software quality</a></div> <p>Whatever the approach to development may be, the final program must satisfy some fundamental properties. The following properties are among the most important:<sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> <sup id="cite_ref-18" class="reference"><a href="#cite_note-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup> </p> <ul><li><a href="/wiki/Reliability_engineering#Software_reliability" title="Reliability engineering">Reliability</a>: how often the results of a program are correct. This depends on conceptual correctness of algorithms and minimization of programming mistakes, such as mistakes in resource management (e.g., <a href="/wiki/Buffer_overflow" title="Buffer overflow">buffer overflows</a> and <a href="/wiki/Race_condition" title="Race condition">race conditions</a>) and logic errors (such as division by zero or <a href="/wiki/Off-by-one_error" title="Off-by-one error">off-by-one errors</a>).</li> <li><a href="/wiki/Robustness_(computer_science)" title="Robustness (computer science)">Robustness</a>: how well a program anticipates problems due to errors (not bugs). This includes situations such as incorrect, inappropriate or corrupt data, unavailability of needed resources such as memory, operating system services, and network connections, user error, and unexpected power outages.</li> <li><a href="/wiki/Usability" title="Usability">Usability</a>: the <a href="/wiki/Ergonomics" title="Ergonomics">ergonomics</a> of a program: the ease with which a person can use the program for its intended purpose or in some cases even unanticipated purposes. Such issues can make or break its success even regardless of other issues. This involves a wide range of textual, graphical, and sometimes hardware elements that improve the clarity, intuitiveness, cohesiveness, and completeness of a program's user interface.</li> <li><a href="/wiki/Software_portability" title="Software portability">Portability</a>: the range of <a href="/wiki/Computer_hardware" title="Computer hardware">computer hardware</a> and <a href="/wiki/Operating_system" title="Operating system">operating system</a> platforms on which the source code of a program can be <a href="/wiki/Compiled" class="mw-redirect" title="Compiled">compiled</a>/<a href="/wiki/Interpreter_(computing)" title="Interpreter (computing)">interpreted</a> and run. This depends on differences in the programming facilities provided by the different platforms, including hardware and operating system resources, expected behavior of the hardware and operating system, and availability of platform-specific compilers (and sometimes libraries) for the language of the source code.</li> <li><a href="/wiki/Maintainability" title="Maintainability">Maintainability</a>: the ease with which a program can be modified by its present or future developers in order to make improvements or to customize, fix <a href="/wiki/Software_bug" title="Software bug">bugs</a> and <a href="/wiki/Vulnerability_(computing)" class="mw-redirect" title="Vulnerability (computing)">security holes</a>, or adapt it to new environments. Good practices<sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> during initial development make the difference in this regard. This quality may not be directly apparent to the end user but it can significantly affect the fate of a program over the long term.</li> <li><a href="/wiki/Algorithmic_efficiency" title="Algorithmic efficiency">Efficiency</a>/<a href="/wiki/Performance_engineering" title="Performance engineering">performance</a>: Measure of system resources a program consumes (processor time, memory space, slow devices such as disks, network bandwidth and to some extent even user interaction): the less, the better. This also includes careful management of resources, for example cleaning up <a href="/wiki/Temporary_file" title="Temporary file">temporary files</a> and eliminating <a href="/wiki/Memory_leak" title="Memory leak">memory leaks</a>. This is often discussed under the shadow of a chosen programming language. Although the language certainly affects performance, even slower languages, such as <a href="/wiki/Python_(programming_language)" title="Python (programming language)">Python</a>, can execute programs instantly from a human perspective. Speed, resource usage, and performance are important for programs that <a href="/wiki/Bottleneck_(software)" title="Bottleneck (software)">bottleneck</a> the system, but efficient use of programmer time is also important and is related to cost: more hardware may be cheaper.</li></ul> <p>Using <a href="/wiki/Test_automation" title="Test automation">automated tests</a> and <a href="/wiki/Fitness_function" title="Fitness function">fitness functions</a> can help to maintain some of the aforementioned attributes. <sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Readability_of_source_code">Readability of source code</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=7" title="Edit section: Readability of source code"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In computer programming, <a href="/wiki/Readability" title="Readability">readability</a> refers to the ease with which a human reader can comprehend the purpose, <a href="/wiki/Control_flow" title="Control flow">control flow</a>, and operation of <a href="/wiki/Source_code" title="Source code">source code</a>. It affects the aspects of quality above, including portability, usability and most importantly maintainability. </p><p>Readability is important because programmers spend the majority of their time reading, trying to understand, reusing, and modifying existing source code, rather than writing new source code. Unreadable code often leads to bugs, inefficiencies, and <a href="/wiki/Code_duplication" class="mw-redirect" title="Code duplication">duplicated code</a>. A study found that a few simple readability transformations made code shorter and drastically reduced the time to understand it.<sup id="cite_ref-21" class="reference"><a href="#cite_note-21"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup> </p><p>Following a consistent <a href="/wiki/Programming_style" title="Programming style">programming style</a> often helps readability. However, readability is more than just programming style. Many factors, having little or nothing to do with the ability of the computer to efficiently compile and execute the code, contribute to readability.<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup> Some of these factors include: </p> <ul><li>Different <a href="/wiki/Indent_style" class="mw-redirect" title="Indent style">indent styles</a> (whitespace)</li> <li><a href="/wiki/Comment_(computer_programming)" title="Comment (computer programming)">Comments</a></li> <li><a href="/wiki/Decomposition_(computer_science)" title="Decomposition (computer science)">Decomposition</a></li> <li><a href="/wiki/Naming_conventions_(programming)" class="mw-redirect" title="Naming conventions (programming)">Naming conventions</a> for objects (such as variables, classes, functions, procedures, etc.)</li></ul> <p>The <a href="/wiki/Separation_of_presentation_and_content" class="mw-redirect" title="Separation of presentation and content">presentation</a> aspects of this (such as indents, line breaks, color highlighting, and so on) are often handled by the <a href="/wiki/Source_code_editor" class="mw-redirect" title="Source code editor">source code editor</a>, but the content aspects reflect the programmer's talent and skills. </p><p>Various <a href="/wiki/Visual_programming_language" title="Visual programming language">visual programming languages</a> have also been developed with the intent to resolve readability concerns by adopting non-traditional approaches to code structure and display. <a href="/wiki/Integrated_development_environment" title="Integrated development environment">Integrated development environments</a> (IDEs) aim to integrate all such help. Techniques like <a href="/wiki/Code_refactoring" title="Code refactoring">Code refactoring</a> can enhance readability. </p> <div class="mw-heading mw-heading3"><h3 id="Algorithmic_complexity">Algorithmic complexity</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=8" title="Edit section: Algorithmic complexity"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The academic field and the engineering practice of computer programming are concerned with discovering and implementing the most efficient algorithms for a given class of problems. For this purpose, algorithms are classified into <i>orders</i> using <a href="/wiki/Big_O_notation" title="Big O notation">Big O notation</a>, which expresses resource use—such as execution time or memory consumption—in terms of the size of an input. Expert programmers are familiar with a variety of well-established algorithms and their respective complexities and use this knowledge to choose algorithms that are best suited to the circumstances. </p> <div class="mw-heading mw-heading3"><h3 id="Methodologies">Methodologies</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=9" title="Edit section: Methodologies"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The first step in most formal software development processes is <a href="/wiki/Requirements_analysis" title="Requirements analysis">requirements analysis</a>, followed by testing to determine value modeling, implementation, and failure elimination (debugging). There exist a lot of different approaches for each of those tasks. One approach popular for requirements analysis is <a href="/wiki/Use_Case" class="mw-redirect" title="Use Case">Use Case</a> analysis. Many programmers use forms of <a href="/wiki/Agile_software_development" title="Agile software development">Agile software development</a> where the various stages of formal software development are more integrated together into short cycles that take a few weeks rather than years. There are many approaches to the Software development process. </p><p>Popular modeling techniques include Object-Oriented Analysis and Design (<a href="/wiki/OOAD" class="mw-redirect" title="OOAD">OOAD</a>) and Model-Driven Architecture (<a href="/wiki/Model-Driven_Architecture" class="mw-redirect" title="Model-Driven Architecture">MDA</a>). The Unified Modeling Language (<a href="/wiki/Unified_Modeling_Language" title="Unified Modeling Language">UML</a>) is a notation used for both the OOAD and MDA. </p><p>A similar technique used for database design is Entity-Relationship Modeling (<a href="/wiki/Entity-Relationship_Model" class="mw-redirect" title="Entity-Relationship Model">ER Modeling</a>). </p><p>Implementation techniques include imperative languages (<a href="/wiki/Object-oriented_programming" title="Object-oriented programming">object-oriented</a> or <a href="/wiki/Procedural_programming" title="Procedural programming">procedural</a>), <a href="/wiki/Functional_programming" title="Functional programming">functional languages</a>, and <a href="/wiki/Logic_programming" title="Logic programming">logic programming</a> languages. </p> <div class="mw-heading mw-heading3"><h3 id="Measuring_language_usage">Measuring language usage</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=10" title="Edit section: Measuring language usage"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>It is very difficult to determine what are the most popular modern programming languages. Methods of measuring programming language popularity include: counting the number of job advertisements that mention the language,<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup> the number of books sold and courses teaching the language (this overestimates the importance of newer languages), and estimates of the number of existing lines of code written in the language (this underestimates the number of users of business languages such as COBOL). </p><p>Some languages are very popular for particular kinds of applications, while some languages are regularly used to write many different kinds of applications. For example, <a href="/wiki/COBOL" title="COBOL">COBOL</a> is still strong in corporate data centers<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> often on large <a href="/wiki/Mainframe_computer" title="Mainframe computer">mainframe computers</a>, <a href="/wiki/Fortran" title="Fortran">Fortran</a> in engineering applications, <a href="/wiki/Scripting_language" title="Scripting language">scripting languages</a> in <a href="/wiki/World_Wide_Web" title="World Wide Web">Web</a> development, and <a href="/wiki/C_(programming_language)" title="C (programming language)">C</a> in <a href="/wiki/Embedded_software" title="Embedded software">embedded software</a>. Many applications use a mix of several languages in their construction and use. New languages are generally designed around the syntax of a prior language with new functionality added, (for example <a href="/wiki/C%2B%2B" title="C++">C++</a> adds object-orientation to C, and <a href="/wiki/Java_(programming_language)" title="Java (programming language)">Java</a> adds memory management and <a href="/wiki/Bytecode" title="Bytecode">bytecode</a> to C++, but as a result, loses efficiency and the ability for low-level manipulation). </p> <div class="mw-heading mw-heading3"><h3 id="Debugging">Debugging</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=11" title="Edit section: Debugging"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Debugging" title="Debugging">Debugging</a></div> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:First_Computer_Bug,_1945.jpg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/f/ff/First_Computer_Bug%2C_1945.jpg/220px-First_Computer_Bug%2C_1945.jpg" decoding="async" width="220" height="174" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/f/ff/First_Computer_Bug%2C_1945.jpg/330px-First_Computer_Bug%2C_1945.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/f/ff/First_Computer_Bug%2C_1945.jpg/440px-First_Computer_Bug%2C_1945.jpg 2x" data-file-width="2889" data-file-height="2285" /></a><figcaption>The first known actual bug causing a problem in a computer was a moth, trapped inside a Harvard mainframe, recorded in a log book entry dated September 9, 1947.<sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup> "Bug" was already a common term for a software defect when this insect was found.</figcaption></figure> <p>Debugging is a very important task in the software development process since having defects in a program can have significant consequences for its users. Some languages are more prone to some kinds of faults because their specification does not require compilers to perform as much checking as other languages. Use of a <a href="/wiki/Static_code_analysis" class="mw-redirect" title="Static code analysis">static code analysis</a> tool can help detect some possible problems. Normally the first step in debugging is to attempt to reproduce the problem. This can be a non-trivial task, for example as with parallel processes or some unusual software bugs. Also, specific user environment and usage history can make it difficult to reproduce the problem. </p><p>After the bug is reproduced, the input of the program may need to be simplified to make it easier to debug. For example, when a bug in a compiler can make it crash when <a href="/wiki/Parsing" title="Parsing">parsing</a> some large source file, a simplification of the test case that results in only few lines from the original source file can be sufficient to reproduce the same crash. Trial-and-error/divide-and-conquer is needed: the programmer will try to remove some parts of the original test case and check if the problem still exists. When debugging the problem in a GUI, the programmer can try to skip some user interaction from the original problem description and check if the remaining actions are sufficient for bugs to appear. Scripting and <a href="/wiki/Breakpoint" title="Breakpoint">breakpointing</a> are also part of this process. </p><p>Debugging is often done with <a href="/wiki/Integrated_development_environment" title="Integrated development environment">IDEs</a>. Standalone debuggers like <a href="/wiki/GDB" class="mw-redirect" title="GDB">GDB</a> are also used, and these often provide less of a visual environment, usually using a <a href="/wiki/Command_line" class="mw-redirect" title="Command line">command line</a>. Some text editors such as <a href="/wiki/Emacs" title="Emacs">Emacs</a> allow GDB to be invoked through them, to provide a visual environment. </p> <div class="mw-heading mw-heading2"><h2 id="Programming_languages">Programming languages<span class="anchor" id="Languages"></span></h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=12" title="Edit section: Programming languages"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main articles: <a href="/wiki/Programming_language" title="Programming language">Programming language</a> and <a href="/wiki/List_of_programming_languages" title="List of programming languages">List of programming languages</a></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/wiki/Computer_program#Languages" title="Computer program">Computer program § Languages</a></div> <p>Different programming languages support different styles of programming (called <i><a href="/wiki/Programming_paradigm" title="Programming paradigm">programming paradigms</a></i>). The choice of language used is subject to many considerations, such as company policy, suitability to task, availability of third-party packages, or individual preference. Ideally, the programming language best suited for the task at hand will be selected. Trade-offs from this ideal involve finding enough programmers who know the language to build a team, the availability of compilers for that language, and the efficiency with which programs written in a given language execute. Languages form an approximate spectrum from "low-level" to "high-level"; "low-level" languages are typically more machine-oriented and faster to execute, whereas "high-level" languages are more abstract and easier to use but execute less quickly. It is usually easier to code in "high-level" languages than in "low-level" ones. Programming languages are essential for software development. They are the building blocks for all software, from the simplest applications to the most sophisticated ones. </p><p><a href="/wiki/Allen_Downey" class="mw-redirect" title="Allen Downey">Allen Downey</a>, in his book <i>How To Think Like A Computer Scientist</i>, writes: </p> <dl><dd>The details look different in different languages, but a few basic instructions appear in just about every language: <ul><li>Input: Gather data from the keyboard, a file, or some other device.</li> <li>Output: Display data on the screen or send data to a file or other device.</li> <li>Arithmetic: Perform basic arithmetical operations like addition and multiplication.</li> <li>Conditional Execution: Check for certain conditions and execute the appropriate sequence of statements.</li> <li>Repetition: Perform some action repeatedly, usually with some variation.</li></ul></dd></dl> <p>Many computer languages provide a mechanism to call functions provided by <a href="/wiki/Shared_library" title="Shared library">shared libraries</a>. Provided the functions in a library follow the appropriate run-time conventions (e.g., method of passing <a href="/wiki/Argument_(computer_science)" class="mw-redirect" title="Argument (computer science)">arguments</a>), then these functions may be written in any other language. </p> <div class="mw-heading mw-heading2"><h2 id="Programmers">Programmers</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=13" title="Edit section: Programmers"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main articles: <a href="/wiki/Programmer" title="Programmer">Programmer</a> and <a href="/wiki/Software_engineer" class="mw-redirect" title="Software engineer">Software engineer</a></div> <p>Computer programmers are those who write computer software. Their jobs usually involve: </p> <style data-mw-deduplicate="TemplateStyles:r1184024115">.mw-parser-output .div-col{margin-top:0.3em;column-width:30em}.mw-parser-output .div-col-small{font-size:90%}.mw-parser-output .div-col-rules{column-rule:1px solid #aaa}.mw-parser-output .div-col dl,.mw-parser-output .div-col ol,.mw-parser-output .div-col ul{margin-top:0}.mw-parser-output .div-col li,.mw-parser-output .div-col dd{page-break-inside:avoid;break-inside:avoid-column}</style><div class="div-col" style="column-width: 30em;"> <ul><li>Prototyping</li> <li>Coding</li> <li>Debugging</li> <li><a href="/wiki/Documentation" title="Documentation">Documentation</a></li> <li><a href="/wiki/System_integration" title="System integration">Integration</a></li> <li><a href="/wiki/Software_maintenance" title="Software maintenance">Maintenance</a></li> <li>Requirements analysis</li> <li><a href="/wiki/Software_architecture" title="Software architecture">Software architecture</a></li> <li>Software testing</li> <li><a href="/wiki/Specification" class="mw-redirect" title="Specification">Specification</a></li></ul> </div><p>Although programming has been presented in the media as a somewhat mathematical subject, some research shows that good programmers have strong skills in natural human languages, and that learning to code is similar to learning a <a href="/wiki/Foreign_language" title="Foreign language">foreign language</a>.<sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-27" class="reference"><a href="#cite_note-27"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup> </p><div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=14" title="Edit section: See also"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239009302">.mw-parser-output .portalbox{padding:0;margin:0.5em 0;display:table;box-sizing:border-box;max-width:175px;list-style:none}.mw-parser-output .portalborder{border:1px solid var(--border-color-base,#a2a9b1);padding:0.1em;background:var(--background-color-neutral-subtle,#f8f9fa)}.mw-parser-output .portalbox-entry{display:table-row;font-size:85%;line-height:110%;height:1.9em;font-style:italic;font-weight:bold}.mw-parser-output .portalbox-image{display:table-cell;padding:0.2em;vertical-align:middle;text-align:center}.mw-parser-output .portalbox-link{display:table-cell;padding:0.2em 0.2em 0.2em 0.3em;vertical-align:middle}@media(min-width:720px){.mw-parser-output .portalleft{clear:left;float:left;margin:0.5em 1em 0.5em 0}.mw-parser-output .portalright{clear:right;float:right;margin:0.5em 0 0.5em 1em}}</style><ul role="navigation" aria-label="Portals" class="noprint portalbox portalborder portalright"> <li class="portalbox-entry"><span class="portalbox-image"><span class="noviewer" typeof="mw:File"><a href="/wiki/File:Octicons-terminal.svg" class="mw-file-description"><img alt="icon" src="//upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Octicons-terminal.svg/24px-Octicons-terminal.svg.png" decoding="async" width="24" height="28" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Octicons-terminal.svg/37px-Octicons-terminal.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Octicons-terminal.svg/49px-Octicons-terminal.svg.png 2x" data-file-width="896" data-file-height="1024" /></a></span></span><span class="portalbox-link"><a href="/wiki/Portal:Computer_programming" title="Portal:Computer programming">Computer programming portal</a></span></li></ul> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Outline_of_computer_programming" title="Outline of computer programming">Outline of computer programming</a></div> <ul><li><a href="/wiki/Code_smell" title="Code smell">Code smell</a></li> <li><a href="/wiki/Computer_network" title="Computer network">Computer networking</a></li> <li><a href="/wiki/Competitive_programming" title="Competitive programming">Competitive programming</a></li> <li><a href="/wiki/Programming_best_practices" class="mw-redirect" title="Programming best practices">Programming best practices</a></li> <li><a href="/wiki/Systems_programming" title="Systems programming">Systems programming</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="References">References</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=15" title="Edit section: References"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist reflist-columns references-column-width" style="column-width: 30em;"> <ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}</style><cite id="CITEREFBebbington2014" class="citation web cs1">Bebbington, Shaun (2014). <a rel="nofollow" class="external text" href="https://yearofcodes.tumblr.com/what-is-coding">"What is coding"</a>. <i>Tumblr</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200429195646/https://yearofcodes.tumblr.com/what-is-coding">Archived</a> from the original on April 29, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">March 3,</span> 2014</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=Tumblr&rft.atitle=What+is+coding&rft.date=2014&rft.aulast=Bebbington&rft.aufirst=Shaun&rft_id=http%3A%2F%2Fyearofcodes.tumblr.com%2Fwhat-is-coding&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFBebbington2014" class="citation web cs1">Bebbington, Shaun (2014). <a rel="nofollow" class="external text" href="https://yearofcodes.tumblr.com/what-is-programming">"What is programming"</a>. <i>Tumblr</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200429195958/https://yearofcodes.tumblr.com/what-is-programming">Archived</a> from the original on April 29, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">March 3,</span> 2014</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=Tumblr&rft.atitle=What+is+programming&rft.date=2014&rft.aulast=Bebbington&rft.aufirst=Shaun&rft_id=http%3A%2F%2Fyearofcodes.tumblr.com%2Fwhat-is-programming&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-Koetsier-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-Koetsier_3-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFKoetsier2001" class="citation journal cs1">Koetsier, Teun (2001). "On the prehistory of programmable machines: musical automata, looms, calculators". <i>Mechanism and Machine Theory</i>. <b>36</b> (5). Elsevier: 589–603. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1016%2FS0094-114X%2801%2900005-2">10.1016/S0094-114X(01)00005-2</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Mechanism+and+Machine+Theory&rft.atitle=On+the+prehistory+of+programmable+machines%3A+musical+automata%2C+looms%2C+calculators&rft.volume=36&rft.issue=5&rft.pages=589-603&rft.date=2001&rft_id=info%3Adoi%2F10.1016%2FS0094-114X%2801%2900005-2&rft.aulast=Koetsier&rft.aufirst=Teun&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFKapurCarnegieMurphyLong2017" class="citation journal cs1">Kapur, Ajay; Carnegie, Dale; Murphy, Jim; Long, Jason (2017). <a rel="nofollow" class="external text" href="https://doi.org/10.1017%2FS1355771817000103">"Loudspeakers Optional: A history of non-loudspeaker-based electroacoustic music"</a>. <i><a href="/wiki/Organised_Sound" title="Organised Sound">Organised Sound</a></i>. <b>22</b> (2). <a href="/wiki/Cambridge_University_Press" title="Cambridge University Press">Cambridge University Press</a>: 195–205. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.1017%2FS1355771817000103">10.1017/S1355771817000103</a></span>. <a href="/wiki/ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a> <a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/1355-7718">1355-7718</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Organised+Sound&rft.atitle=Loudspeakers+Optional%3A+A+history+of+non-loudspeaker-based+electroacoustic+music&rft.volume=22&rft.issue=2&rft.pages=195-205&rft.date=2017&rft_id=info%3Adoi%2F10.1017%2FS1355771817000103&rft.issn=1355-7718&rft.aulast=Kapur&rft.aufirst=Ajay&rft.au=Carnegie%2C+Dale&rft.au=Murphy%2C+Jim&rft.au=Long%2C+Jason&rft_id=https%3A%2F%2Fdoi.org%2F10.1017%252FS1355771817000103&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFFowler1967" class="citation journal cs1">Fowler, Charles B. (October 1967). "The Museum of Music: A History of Mechanical Instruments". <i>Music Educators Journal</i>. <b>54</b> (2): 45–49. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.2307%2F3391092">10.2307/3391092</a>. <a href="/wiki/JSTOR_(identifier)" class="mw-redirect" title="JSTOR (identifier)">JSTOR</a> <a rel="nofollow" class="external text" href="https://www.jstor.org/stable/3391092">3391092</a>. <a href="/wiki/S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a> <a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:190524140">190524140</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Music+Educators+Journal&rft.atitle=The+Museum+of+Music%3A+A+History+of+Mechanical+Instruments&rft.volume=54&rft.issue=2&rft.pages=45-49&rft.date=1967-10&rft_id=https%3A%2F%2Fapi.semanticscholar.org%2FCorpusID%3A190524140%23id-name%3DS2CID&rft_id=https%3A%2F%2Fwww.jstor.org%2Fstable%2F3391092%23id-name%3DJSTOR&rft_id=info%3Adoi%2F10.2307%2F3391092&rft.aulast=Fowler&rft.aufirst=Charles+B.&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-Sharkey-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-Sharkey_6-0">^</a></b></span> <span class="reference-text"><a href="/wiki/Noel_Sharkey" title="Noel Sharkey">Noel Sharkey</a> (2007), <a rel="nofollow" class="external text" href="https://web.archive.org/web/20070629182810/http://www.shef.ac.uk/marcoms/eview/articles58/robot.html">A 13th Century Programmable Robot</a>, <a href="/wiki/University_of_Sheffield" title="University of Sheffield">University of Sheffield</a></span> </li> <li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFDooley2013" class="citation book cs1">Dooley, John F. (2013). <i>A Brief History of Cryptology and Cryptographic Algorithms</i>. Springer Science & Business Media. pp. 12–3. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/9783319016283" title="Special:BookSources/9783319016283"><bdi>9783319016283</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=A+Brief+History+of+Cryptology+and+Cryptographic+Algorithms&rft.pages=12-3&rft.pub=Springer+Science+%26+Business+Media&rft.date=2013&rft.isbn=9783319016283&rft.aulast=Dooley&rft.aufirst=John+F.&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-IEEE-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-IEEE_8-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFFuegiFrancis2003" class="citation journal cs1">Fuegi, J.; Francis, J. (2003). "Lovelace & Babbage and the Creation of the 1843 'notes'<span class="cs1-kern-right"></span>". <i>IEEE Annals of the History of Computing</i>. <b>25</b> (4): 16. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1109%2FMAHC.2003.1253887">10.1109/MAHC.2003.1253887</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=IEEE+Annals+of+the+History+of+Computing&rft.atitle=Lovelace+%26+Babbage+and+the+Creation+of+the+1843+%27notes%27&rft.volume=25&rft.issue=4&rft.pages=16&rft.date=2003&rft_id=info%3Adoi%2F10.1109%2FMAHC.2003.1253887&rft.aulast=Fuegi&rft.aufirst=J.&rft.au=Francis%2C+J.&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-IEEE2021-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-IEEE2021_9-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFRojas2021" class="citation journal cs1">Rojas, R. (2021). "The Computer Programs of Charles Babbage". <i>IEEE Annals of the History of Computing</i>. <b>43</b> (1): 6–18. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1109%2FMAHC.2020.3045717">10.1109/MAHC.2020.3045717</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=IEEE+Annals+of+the+History+of+Computing&rft.atitle=The+Computer+Programs+of+Charles+Babbage&rft.volume=43&rft.issue=1&rft.pages=6-18&rft.date=2021&rft_id=info%3Adoi%2F10.1109%2FMAHC.2020.3045717&rft.aulast=Rojas&rft.aufirst=R.&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-IEEE2024-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-IEEE2024_10-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFRojas2024" class="citation journal cs1">Rojas, R. (2024). <a rel="nofollow" class="external text" href="https://refubium.fu-berlin.de/bitstream/fub188/44090/1/3624731.pdf">"The First Computer Program"</a> <span class="cs1-format">(PDF)</span>. <i>Communications of the ACM</i>. <b>67</b> (6): 78–81. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F3624731">10.1145/3624731</a></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Communications+of+the+ACM&rft.atitle=The+First+Computer+Program&rft.volume=67&rft.issue=6&rft.pages=78-81&rft.date=2024&rft_id=info%3Adoi%2F10.1145%2F3624731&rft.aulast=Rojas&rft.aufirst=R.&rft_id=https%3A%2F%2Frefubium.fu-berlin.de%2Fbitstream%2Ffub188%2F44090%2F1%2F3624731.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFda_Cruz2020" class="citation web cs1">da Cruz, Frank (March 10, 2020). <a rel="nofollow" class="external text" href="http://www.columbia.edu/acis/history/hollerith.html">"Columbia University Computing History – Herman Hollerith"</a>. <i>Columbia University</i>. Columbia.edu. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200429210742/http://www.columbia.edu/cu/computinghistory/hollerith.html">Archived</a> from the original on April 29, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">April 25,</span> 2010</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=Columbia+University&rft.atitle=Columbia+University+Computing+History+%E2%80%93+Herman+Hollerith&rft.date=2020-03-10&rft.aulast=da+Cruz&rft.aufirst=Frank&rft_id=http%3A%2F%2Fwww.columbia.edu%2Facis%2Fhistory%2Fhollerith.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.computerhistory.org/timeline/memory-storage/">"Memory & Storage | Timeline of Computer History | Computer History Museum"</a>. <i>www.computerhistory.org</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20210527071533/https://www.computerhistory.org/timeline/memory-storage/">Archived</a> from the original on May 27, 2021<span class="reference-accessdate">. Retrieved <span class="nowrap">June 3,</span> 2021</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=www.computerhistory.org&rft.atitle=Memory+%26+Storage+%7C+Timeline+of+Computer+History+%7C+Computer+History+Museum&rft_id=https%3A%2F%2Fwww.computerhistory.org%2Ftimeline%2Fmemory-storage%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFRidgway1952" class="citation book cs1">Ridgway, Richard (1952). "Compiling routines". <i>Proceedings of the 1952 ACM national meeting (Toronto) on - ACM '52</i>. pp. 1–5. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F800259.808980">10.1145/800259.808980</a></span>. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/9781450379250" title="Special:BookSources/9781450379250"><bdi>9781450379250</bdi></a>. <a href="/wiki/S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a> <a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:14878552">14878552</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.atitle=Compiling+routines&rft.btitle=Proceedings+of+the+1952+ACM+national+meeting+%28Toronto%29+on+-+ACM+%2752&rft.pages=1-5&rft.date=1952&rft_id=https%3A%2F%2Fapi.semanticscholar.org%2FCorpusID%3A14878552%23id-name%3DS2CID&rft_id=info%3Adoi%2F10.1145%2F800259.808980&rft.isbn=9781450379250&rft.aulast=Ridgway&rft.aufirst=Richard&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-wikles1968-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-wikles1968_14-0">^</a></b></span> <span class="reference-text"><a href="/wiki/Maurice_V._Wilkes" class="mw-redirect" title="Maurice V. Wilkes">Maurice V. Wilkes</a>. 1968. Computers Then and Now. Journal of the Association for Computing Machinery, 15(1):1–7, January. p. 3 (a comment in brackets added by editor), "(I do not think that the term compiler was then [1953] in general use, although it had in fact been introduced by Grace Hopper.)"</span> </li> <li id="cite_note-computerhistory.org-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-computerhistory.org_15-0">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external autonumber" href="http://www.computerhistory.org/events/lectures/cobol_06121997/index.shtml">[1]</a> The World's First COBOL Compilers <a rel="nofollow" class="external text" href="https://web.archive.org/web/20111013021915/http://www.computerhistory.org/events/lectures/cobol_06121997/index.shtml">Archived</a> 13 October 2011 at the <a href="/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a></span> </li> <li id="cite_note-bergstein-16"><span class="mw-cite-backlink">^ <a href="#cite_ref-bergstein_16-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-bergstein_16-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFBergstein2007" class="citation web cs1">Bergstein, Brian (March 20, 2007). <a rel="nofollow" class="external text" href="https://www.nbcnews.com/id/wbna17704662">"Fortran creator John Backus dies"</a>. <i>NBC News</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200429211030/http://www.nbcnews.com/id/17704662">Archived</a> from the original on April 29, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">April 25,</span> 2010</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=NBC+News&rft.atitle=Fortran+creator+John+Backus+dies&rft.date=2007-03-20&rft.aulast=Bergstein&rft.aufirst=Brian&rft_id=https%3A%2F%2Fwww.nbcnews.com%2Fid%2Fwbna17704662&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation magazine cs1"><a rel="nofollow" class="external text" href="https://www.informationweek.com/cloud/nist-to-develop-cloud-roadmap/d/d-id/1093958?">"NIST To Develop Cloud Roadmap"</a>. <i><a href="/wiki/InformationWeek" title="InformationWeek">InformationWeek</a></i>. November 5, 2010. <q>Computing initiative seeks to remove barriers to cloud adoption in security, interoperability, portability and reliability.</q></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=InformationWeek&rft.atitle=NIST+To+Develop+Cloud+Roadmap&rft.date=2010-11-05&rft_id=https%3A%2F%2Fwww.informationweek.com%2Fcloud%2Fnist-to-develop-cloud-roadmap%2Fd%2Fd-id%2F1093958%3F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-18">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation news cs1">"What is it based on". <i><a href="/wiki/Computerworld" title="Computerworld">Computerworld</a></i>. April 9, 1984. p. 13. <q>Is it based on ... Reliability Portability. Compatibility</q></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Computerworld&rft.atitle=What+is+it+based+on&rft.pages=13&rft.date=1984-04-09&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://wisdomgeek.com/programming/tips-become-good-programmer">"Programming 101: Tips to become a good programmer - Wisdom Geek"</a>. <i>Wisdom Geek</i>. May 19, 2016. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20160523063915/http://wisdomgeek.com/programming/tips-become-good-programmer">Archived</a> from the original on May 23, 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">May 23,</span> 2016</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=Wisdom+Geek&rft.atitle=Programming+101%3A+Tips+to+become+a+good+programmer+-+Wisdom+Geek&rft.date=2016-05-19&rft_id=http%3A%2F%2Fwisdomgeek.com%2Fprogramming%2Ftips-become-good-programmer&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation book cs1"><i>Fundamentals of Software Architecture: An Engineering Approach</i>. O'Reilly Media. 2020. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-1492043454" title="Special:BookSources/978-1492043454"><bdi>978-1492043454</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Fundamentals+of+Software+Architecture%3A+An+Engineering+Approach&rft.pub=O%27Reilly+Media&rft.date=2020&rft.isbn=978-1492043454&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-21">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFElshoffMarcotty1982" class="citation journal cs1">Elshoff, James L.; Marcotty, Michael (1982). <a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F358589.358596">"Improving computer program readability to aid modification"</a>. <i>Communications of the ACM</i>. <b>25</b> (8): 512–521. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F358589.358596">10.1145/358589.358596</a></span>. <a href="/wiki/S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a> <a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:30026641">30026641</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Communications+of+the+ACM&rft.atitle=Improving+computer+program+readability+to+aid+modification&rft.volume=25&rft.issue=8&rft.pages=512-521&rft.date=1982&rft_id=info%3Adoi%2F10.1145%2F358589.358596&rft_id=https%3A%2F%2Fapi.semanticscholar.org%2FCorpusID%3A30026641%23id-name%3DS2CID&rft.aulast=Elshoff&rft.aufirst=James+L.&rft.au=Marcotty%2C+Michael&rft_id=https%3A%2F%2Fdoi.org%2F10.1145%252F358589.358596&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFMultiple_(wiki)" class="citation web cs1">Multiple (wiki). <a rel="nofollow" class="external text" href="http://docforge.com/wiki/Readability">"Readability"</a>. <i>Docforge</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200429211203/http://www.docforge.com/wiki/Readability">Archived</a> from the original on April 29, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">January 30,</span> 2010</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=Docforge&rft.atitle=Readability&rft.au=Multiple+%28wiki%29&rft_id=http%3A%2F%2Fdocforge.com%2Fwiki%2FReadability&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFEnticknap2007" class="citation web cs1">Enticknap, Nicholas (September 11, 2007). <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="http://www.computerweekly.com/Articles/2007/09/11/226631/sslcomputer-weekly-it-salary-survey-finance-boom-drives-it-job.htm">"SSL/Computer Weekly IT salary survey: finance boom drives IT job growth"</a></span>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20111026035734/http://www.computerweekly.com/Articles/2007/09/11/226631/SSLComputer-Weekly-IT-salary-survey-finance-boom-drives-IT-job.htm">Archived</a> from the original on October 26, 2011<span class="reference-accessdate">. Retrieved <span class="nowrap">June 24,</span> 2009</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=SSL%2FComputer+Weekly+IT+salary+survey%3A+finance+boom+drives+IT+job+growth&rft.date=2007-09-11&rft.aulast=Enticknap&rft.aufirst=Nicholas&rft_id=http%3A%2F%2Fwww.computerweekly.com%2FArticles%2F2007%2F09%2F11%2F226631%2Fsslcomputer-weekly-it-salary-survey-finance-boom-drives-it-job.htm&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFMitchell2012" class="citation web cs1">Mitchell, Robert (May 21, 2012). <a rel="nofollow" class="external text" href="http://www.computerworld.com/article/2504568/data-center/the-cobol-brain-drain.html">"The Cobol Brain Drain"</a>. Computer World. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190212185631/https://www.computerworld.com/article/2504568/data-center/the-cobol-brain-drain.html">Archived</a> from the original on February 12, 2019<span class="reference-accessdate">. Retrieved <span class="nowrap">May 9,</span> 2015</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=The+Cobol+Brain+Drain&rft.pub=Computer+World&rft.date=2012-05-21&rft.aulast=Mitchell&rft.aufirst=Robert&rft_id=http%3A%2F%2Fwww.computerworld.com%2Farticle%2F2504568%2Fdata-center%2Fthe-cobol-brain-drain.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.nationalgeographic.org/thisday/sep9/worlds-first-computer-bug">"Photograph courtesy Naval Surface Warfare Center, Dahlgren, Virginia, from National Geographic Sept. 1947"</a>. July 15, 2020. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20201113163443/https://www.nationalgeographic.org/thisday/sep9/worlds-first-computer-bug/">Archived</a> from the original on November 13, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">November 10,</span> 2020</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Photograph+courtesy+Naval+Surface+Warfare+Center%2C+Dahlgren%2C+Virginia%2C+from+National+Geographic+Sept.+1947&rft.date=2020-07-15&rft_id=https%3A%2F%2Fwww.nationalgeographic.org%2Fthisday%2Fsep9%2Fworlds-first-computer-bug&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-26">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFPratMadhyasthaMottarellaKuo2020" class="citation journal cs1">Prat, Chantel S.; Madhyastha, Tara M.; Mottarella, Malayka J.; Kuo, Chu-Hsuan (March 2, 2020). <a rel="nofollow" class="external text" href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7051953">"Relating Natural Language Aptitude to Individual Differences in Learning Programming Languages"</a>. <i>Scientific Reports</i>. <b>10</b> (1): 3817. <a href="/wiki/Bibcode_(identifier)" class="mw-redirect" title="Bibcode (identifier)">Bibcode</a>:<a rel="nofollow" class="external text" href="https://ui.adsabs.harvard.edu/abs/2020NatSR..10.3817P">2020NatSR..10.3817P</a>. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1038%2Fs41598-020-60661-8">10.1038/s41598-020-60661-8</a>. <a href="/wiki/ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a> <a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/2045-2322">2045-2322</a>. <a href="/wiki/PMC_(identifier)" class="mw-redirect" title="PMC (identifier)">PMC</a> <span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7051953">7051953</a></span>. <a href="/wiki/PMID_(identifier)" class="mw-redirect" title="PMID (identifier)">PMID</a> <a rel="nofollow" class="external text" href="https://pubmed.ncbi.nlm.nih.gov/32123206">32123206</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Scientific+Reports&rft.atitle=Relating+Natural+Language+Aptitude+to+Individual+Differences+in+Learning+Programming+Languages&rft.volume=10&rft.issue=1&rft.pages=3817&rft.date=2020-03-02&rft_id=https%3A%2F%2Fwww.ncbi.nlm.nih.gov%2Fpmc%2Farticles%2FPMC7051953%23id-name%3DPMC&rft_id=info%3Abibcode%2F2020NatSR..10.3817P&rft_id=info%3Apmid%2F32123206&rft_id=info%3Adoi%2F10.1038%2Fs41598-020-60661-8&rft.issn=2045-2322&rft.aulast=Prat&rft.aufirst=Chantel+S.&rft.au=Madhyastha%2C+Tara+M.&rft.au=Mottarella%2C+Malayka+J.&rft.au=Kuo%2C+Chu-Hsuan&rft_id=https%3A%2F%2Fwww.ncbi.nlm.nih.gov%2Fpmc%2Farticles%2FPMC7051953&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> <li id="cite_note-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-27">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://news.mit.edu/2020/brain-reading-computer-code-1215">"To the brain, reading computer code is not the same as reading language"</a>. <i>MIT News | Massachusetts Institute of Technology</i>. December 15, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">July 29,</span> 2023</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=MIT+News+%7C+Massachusetts+Institute+of+Technology&rft.atitle=To+the+brain%2C+reading+computer+code+is+not+the+same+as+reading+language&rft.date=2020-12-15&rft_id=https%3A%2F%2Fnews.mit.edu%2F2020%2Fbrain-reading-computer-code-1215&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></span> </li> </ol></div> <div class="mw-heading mw-heading3"><h3 id="Sources">Sources</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=16" title="Edit section: Sources"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFCeruzzi1998" class="citation book cs1">Ceruzzi, Paul E. (1998). <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/historyofmodernc00ceru"><i>History of Computing</i></a></span>. Cambridge, Massachusetts: MIT Press. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/9780262032551" title="Special:BookSources/9780262032551"><bdi>9780262032551</bdi></a> – via EBSCOhost.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=History+of+Computing&rft.place=Cambridge%2C+Massachusetts&rft.pub=MIT+Press&rft.date=1998&rft.isbn=9780262032551&rft.aulast=Ceruzzi&rft.aufirst=Paul+E.&rft_id=https%3A%2F%2Farchive.org%2Fdetails%2Fhistoryofmodernc00ceru&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFEvans2018" class="citation book cs1">Evans, Claire L. (2018). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=C8ouDwAAQBAJ&q=9780735211759&pg=PP1"><i>Broad Band: The Untold Story of the Women Who Made the Internet</i></a>. New York: Portfolio/Penguin. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/9780735211759" title="Special:BookSources/9780735211759"><bdi>9780735211759</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Broad+Band%3A+The+Untold+Story+of+the+Women+Who+Made+the+Internet&rft.place=New+York&rft.pub=Portfolio%2FPenguin&rft.date=2018&rft.isbn=9780735211759&rft.aulast=Evans&rft.aufirst=Claire+L.&rft_id=https%3A%2F%2Fbooks.google.com%2Fbooks%3Fid%3DC8ouDwAAQBAJ%26q%3D9780735211759%26pg%3DPP1&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFGürer1995" class="citation journal cs1">Gürer, Denise (1995). <a rel="nofollow" class="external text" href="https://courses.cs.washington.edu/courses/csep590/06au/readings/p175-gurer.pdf">"Pioneering Women in Computer Science"</a> <span class="cs1-format">(PDF)</span>. <i>Communications of the ACM</i>. <b>38</b> (1): 45–54. <a href="/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F204865.204875">10.1145/204865.204875</a>. <a href="/wiki/S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a> <a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:6626310">6626310</a>. <a rel="nofollow" class="external text" href="https://ghostarchive.org/archive/20221009/https://courses.cs.washington.edu/courses/csep590/06au/readings/p175-gurer.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 9, 2022.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=Communications+of+the+ACM&rft.atitle=Pioneering+Women+in+Computer+Science&rft.volume=38&rft.issue=1&rft.pages=45-54&rft.date=1995&rft_id=info%3Adoi%2F10.1145%2F204865.204875&rft_id=https%3A%2F%2Fapi.semanticscholar.org%2FCorpusID%3A6626310%23id-name%3DS2CID&rft.aulast=G%C3%BCrer&rft.aufirst=Denise&rft_id=https%3A%2F%2Fcourses.cs.washington.edu%2Fcourses%2Fcsep590%2F06au%2Freadings%2Fp175-gurer.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFSmith2013" class="citation journal cs1">Smith, Erika E. (2013). <span class="id-lock-subscription" title="Paid subscription required"><a rel="nofollow" class="external text" href="http://search.ebscohost.com/login.aspx?direct=true&db=lfh&AN=90670848&site=ehost-live">"Recognizing a Collective Inheritance through the History of Women in Computing"</a></span>. <i>CLCWeb: Comparative Literature & Culture: A WWWeb Journal</i>. <b>15</b> (1): 1–9 – via EBSCOhost.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=CLCWeb%3A+Comparative+Literature+%26+Culture%3A+A+WWWeb+Journal&rft.atitle=Recognizing+a+Collective+Inheritance+through+the+History+of+Women+in+Computing&rft.volume=15&rft.issue=1&rft.pages=1-9&rft.date=2013&rft.aulast=Smith&rft.aufirst=Erika+E.&rft_id=http%3A%2F%2Fsearch.ebscohost.com%2Flogin.aspx%3Fdirect%3Dtrue%26db%3Dlfh%26AN%3D90670848%26site%3Dehost-live&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComputer+programming" class="Z3988"></span></li></ul> <div class="mw-heading mw-heading2"><h2 id="Further_reading">Further reading</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=17" title="Edit section: Further reading"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>A.K. Hartmann, <i><a rel="nofollow" class="external text" href="https://web.archive.org/web/20090211113048/http://worldscibooks.com/physics/6988.html">Practical Guide to Computer Simulations</a></i>, Singapore: <a href="/wiki/World_Scientific" title="World Scientific">World Scientific</a> (2009)</li> <li>A. Hunt, D. Thomas, and W. Cunningham, <i>The Pragmatic Programmer. From Journeyman to Master</i>, Amsterdam: Addison-Wesley Longman (1999)</li> <li>Brian W. Kernighan, <i>The Practice of Programming</i>, Pearson (1999)</li> <li><a href="/wiki/Gerald_Weinberg" title="Gerald Weinberg">Weinberg, Gerald M.</a>, <i>The Psychology of Computer Programming</i>, New York: Van Nostrand Reinhold (1971)</li> <li><a href="/wiki/Edsger_W._Dijkstra" title="Edsger W. Dijkstra">Edsger W. Dijkstra</a>, <i>A Discipline of Programming</i>, Prentice-Hall (1976)</li> <li>O.-J. Dahl, <a href="/wiki/Edsger_W._Dijkstra" title="Edsger W. Dijkstra">E.W.Dijkstra</a>, C.A.R. Hoare, <i>Structured Programming</i>, Academic Press (1972)</li> <li><a href="/wiki/David_Gries" title="David Gries">David Gries</a>, <i>The Science of Programming</i>, Springer-Verlag (1981)</li></ul> <div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Computer_programming&action=edit&section=18" title="Edit section: External links"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1235681985">.mw-parser-output .side-box{margin:4px 0;box-sizing:border-box;border:1px solid #aaa;font-size:88%;line-height:1.25em;background-color:var(--background-color-interactive-subtle,#f8f9fa);display:flow-root}.mw-parser-output .side-box-abovebelow,.mw-parser-output .side-box-text{padding:0.25em 0.9em}.mw-parser-output .side-box-image{padding:2px 0 2px 0.9em;text-align:center}.mw-parser-output .side-box-imageright{padding:2px 0.9em 2px 0;text-align:center}@media(min-width:500px){.mw-parser-output .side-box-flex{display:flex;align-items:center}.mw-parser-output .side-box-text{flex:1;min-width:0}}@media(min-width:720px){.mw-parser-output .side-box{width:238px}.mw-parser-output .side-box-right{clear:right;float:right;margin-left:1em}.mw-parser-output .side-box-left{margin-right:1em}}</style><div class="side-box metadata side-box-right"><style data-mw-deduplicate="TemplateStyles:r1126788409">.mw-parser-output .plainlist ol,.mw-parser-output .plainlist ul{line-height:inherit;list-style:none;margin:0;padding:0}.mw-parser-output .plainlist ol li,.mw-parser-output .plainlist ul li{margin-bottom:0}</style> <div class="side-box-abovebelow"> <a href="/wiki/Wikipedia:The_Wikipedia_Library" title="Wikipedia:The Wikipedia Library">Library resources</a> about <br /> <b>Computer programming</b> <hr /></div> <div class="side-box-flex"> <div class="side-box-text plainlist"><ul><li><a class="external text" href="https://ftl.toolforge.org/cgi-bin/ftl?st=wp&su=Computer+programming&library=OLBP">Online books</a></li> <li><a class="external text" href="https://ftl.toolforge.org/cgi-bin/ftl?st=wp&su=Computer+programming">Resources in your library</a></li> <li><a class="external text" href="https://ftl.toolforge.org/cgi-bin/ftl?st=wp&su=Computer+programming&library=0CHOOSE0">Resources in other libraries</a></li> </ul></div></div> </div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1235681985"><style data-mw-deduplicate="TemplateStyles:r1237033735">@media print{body.ns-0 .mw-parser-output .sistersitebox{display:none!important}}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sistersitebox img[src*="Wiktionary-logo-en-v2.svg"]{background-color:white}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sistersitebox img[src*="Wiktionary-logo-en-v2.svg"]{background-color:white}}</style><div class="side-box side-box-right plainlinks sistersitebox"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1126788409"> <div class="side-box-flex"> <div class="side-box-image"><span class="noviewer" typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/df/Wikibooks-logo-en-noslogan.svg/40px-Wikibooks-logo-en-noslogan.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/d/df/Wikibooks-logo-en-noslogan.svg/60px-Wikibooks-logo-en-noslogan.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/d/df/Wikibooks-logo-en-noslogan.svg/80px-Wikibooks-logo-en-noslogan.svg.png 2x" data-file-width="400" data-file-height="400" /></span></span></div> <div class="side-box-text plainlist">Wikibooks has a book on the topic of: <i><b><a href="https://en.wikibooks.org/wiki/Computer_Programming" class="extiw" title="wikibooks:Computer Programming">Computer Programming</a></b></i></div></div> </div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1235681985"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1237033735"><div class="side-box side-box-right plainlinks sistersitebox"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1126788409"> <div class="side-box-flex"> <div class="side-box-image"><span class="noviewer" typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/df/Wikibooks-logo-en-noslogan.svg/40px-Wikibooks-logo-en-noslogan.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/d/df/Wikibooks-logo-en-noslogan.svg/60px-Wikibooks-logo-en-noslogan.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/d/df/Wikibooks-logo-en-noslogan.svg/80px-Wikibooks-logo-en-noslogan.svg.png 2x" data-file-width="400" data-file-height="400" /></span></span></div> <div class="side-box-text plainlist">Wikibooks has a book on the topic of: <i><b><a href="https://en.wikibooks.org/wiki/Windows_Programming" class="extiw" title="wikibooks:Windows Programming">Windows Programming</a></b></i></div></div> </div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1235681985"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1237033735"><div class="side-box side-box-right plainlinks sistersitebox"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1126788409"> <div class="side-box-flex"> <div class="side-box-image"><span class="noviewer" typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/0/0b/Wikiversity_logo_2017.svg/40px-Wikiversity_logo_2017.svg.png" decoding="async" width="40" height="33" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/0/0b/Wikiversity_logo_2017.svg/60px-Wikiversity_logo_2017.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/0/0b/Wikiversity_logo_2017.svg/80px-Wikiversity_logo_2017.svg.png 2x" data-file-width="626" data-file-height="512" /></span></span></div> <div class="side-box-text plainlist">Wikiversity has learning resources about <i><b><a href="https://en.wikiversity.org/wiki/Computer_Programming" class="extiw" title="v:Computer Programming">Computer Programming</a></b></i></div></div> </div> <ul><li><span class="noviewer" typeof="mw:File"><a href="/wiki/File:Commons-logo.svg" class="mw-file-description"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/12px-Commons-logo.svg.png" decoding="async" width="12" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/18px-Commons-logo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/24px-Commons-logo.svg.png 2x" data-file-width="1024" data-file-height="1376" /></a></span> Media related to <a href="https://commons.wikimedia.org/wiki/Category:Computer_programming" class="extiw" title="commons:Category:Computer programming">Computer programming</a> at Wikimedia Commons</li> <li><span class="noviewer" typeof="mw:File"><a href="/wiki/File:Wikiquote-logo.svg" class="mw-file-description"><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Wikiquote-logo.svg/13px-Wikiquote-logo.svg.png" decoding="async" width="13" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Wikiquote-logo.svg/20px-Wikiquote-logo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Wikiquote-logo.svg/27px-Wikiquote-logo.svg.png 2x" data-file-width="300" data-file-height="355" /></a></span> Quotations related to <a href="https://en.wikiquote.org/wiki/Programming" class="extiw" title="wikiquote:Programming">Programming</a> at Wikiquote</li></ul> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1236075235">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}</style></div><div role="navigation" class="navbox" aria-labelledby="Computer_science" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239400231"><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Computer_science" title="Template:Computer science"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Computer_science" title="Template talk:Computer science"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Computer_science" title="Special:EditPage/Template:Computer science"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="Computer_science" style="font-size:114%;margin:0 4em"><a href="/wiki/Computer_science" title="Computer science">Computer science</a></div></th></tr><tr><td class="navbox-abovebelow" colspan="2"><div>Note: This template roughly follows the 2012 <a href="/wiki/ACM_Computing_Classification_System" title="ACM Computing Classification System">ACM Computing Classification System</a>.</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Computer_hardware" title="Computer hardware">Hardware</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Printed_circuit_board" title="Printed circuit board">Printed circuit board</a></li> <li><a href="/wiki/Peripheral" title="Peripheral">Peripheral</a></li> <li><a href="/wiki/Integrated_circuit" title="Integrated circuit">Integrated circuit</a></li> <li><a href="/wiki/Very_Large_Scale_Integration" class="mw-redirect" title="Very Large Scale Integration">Very Large Scale Integration</a></li> <li><a href="/wiki/System_on_a_chip" title="System on a chip">Systems on Chip (SoCs)</a></li> <li><a href="/wiki/Green_computing" title="Green computing">Energy consumption (Green computing)</a></li> <li><a href="/wiki/Electronic_design_automation" title="Electronic design automation">Electronic design automation</a></li> <li><a href="/wiki/Hardware_acceleration" title="Hardware acceleration">Hardware acceleration</a></li> <li><a href="/wiki/Processor_(computing)" title="Processor (computing)">Processor</a></li> <li><a href="/wiki/List_of_computer_size_categories" title="List of computer size categories">Size</a> / <a href="/wiki/Form_factor_(design)" title="Form factor (design)">Form</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Computer systems organization</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Computer_architecture" title="Computer architecture">Computer architecture</a></li> <li><a href="/wiki/Computational_complexity" title="Computational complexity">Computational complexity</a></li> <li><a href="/wiki/Dependability" title="Dependability">Dependability</a></li> <li><a href="/wiki/Embedded_system" title="Embedded system">Embedded system</a></li> <li><a href="/wiki/Real-time_computing" title="Real-time computing">Real-time computing</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Computer_network" title="Computer network">Networks</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Network_architecture" title="Network architecture">Network architecture</a></li> <li><a href="/wiki/Network_protocol" class="mw-redirect" title="Network protocol">Network protocol</a></li> <li><a href="/wiki/Networking_hardware" title="Networking hardware">Network components</a></li> <li><a href="/wiki/Network_scheduler" title="Network scheduler">Network scheduler</a></li> <li><a href="/wiki/Network_performance" title="Network performance">Network performance evaluation</a></li> <li><a href="/wiki/Network_service" title="Network service">Network service</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Software organization</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Interpreter_(computing)" title="Interpreter (computing)">Interpreter</a></li> <li><a href="/wiki/Middleware" title="Middleware">Middleware</a></li> <li><a href="/wiki/Virtual_machine" title="Virtual machine">Virtual machine</a></li> <li><a href="/wiki/Operating_system" title="Operating system">Operating system</a></li> <li><a href="/wiki/Software_quality" title="Software quality">Software quality</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Programming_language_theory" title="Programming language theory">Software notations</a> and <a href="/wiki/Programming_tool" title="Programming tool">tools</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Programming_paradigm" title="Programming paradigm">Programming paradigm</a></li> <li><a href="/wiki/Programming_language" title="Programming language">Programming language</a></li> <li><a href="/wiki/Compiler_construction" class="mw-redirect" title="Compiler construction">Compiler</a></li> <li><a href="/wiki/Domain-specific_language" title="Domain-specific language">Domain-specific language</a></li> <li><a href="/wiki/Modeling_language" title="Modeling language">Modeling language</a></li> <li><a href="/wiki/Software_framework" title="Software framework">Software framework</a></li> <li><a href="/wiki/Integrated_development_environment" title="Integrated development environment">Integrated development environment</a></li> <li><a href="/wiki/Software_configuration_management" title="Software configuration management">Software configuration management</a></li> <li><a href="/wiki/Library_(computing)" title="Library (computing)">Software library</a></li> <li><a href="/wiki/Software_repository" title="Software repository">Software repository</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Software_development" title="Software development">Software development</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Control_variable_(programming)" class="mw-redirect" title="Control variable (programming)">Control variable</a></li> <li><a href="/wiki/Software_development_process" title="Software development process">Software development process</a></li> <li><a href="/wiki/Requirements_analysis" title="Requirements analysis">Requirements analysis</a></li> <li><a href="/wiki/Software_design" title="Software design">Software design</a></li> <li><a href="/wiki/Software_construction" title="Software construction">Software construction</a></li> <li><a href="/wiki/Software_deployment" title="Software deployment">Software deployment</a></li> <li><a href="/wiki/Software_engineering" title="Software engineering">Software engineering</a></li> <li><a href="/wiki/Software_maintenance" title="Software maintenance">Software maintenance</a></li> <li><a href="/wiki/Programming_team" title="Programming team">Programming team</a></li> <li><a href="/wiki/Open-source_software" title="Open-source software">Open-source model</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Theory_of_computation" title="Theory of computation">Theory of computation</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Model_of_computation" title="Model of computation">Model of computation</a> <ul><li><a href="/wiki/Stochastic_computing" title="Stochastic computing">Stochastic</a></li></ul></li> <li><a href="/wiki/Formal_language" title="Formal language">Formal language</a></li> <li><a href="/wiki/Automata_theory" title="Automata theory">Automata theory</a></li> <li><a href="/wiki/Computability_theory" title="Computability theory">Computability theory</a></li> <li><a href="/wiki/Computational_complexity_theory" title="Computational complexity theory">Computational complexity theory</a></li> <li><a href="/wiki/Logic_in_computer_science" title="Logic in computer science">Logic</a></li> <li><a href="/wiki/Semantics_(computer_science)" title="Semantics (computer science)">Semantics</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Algorithm" title="Algorithm">Algorithms</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Algorithm_design" class="mw-redirect" title="Algorithm design">Algorithm design</a></li> <li><a href="/wiki/Analysis_of_algorithms" title="Analysis of algorithms">Analysis of algorithms</a></li> <li><a href="/wiki/Algorithmic_efficiency" title="Algorithmic efficiency">Algorithmic efficiency</a></li> <li><a href="/wiki/Randomized_algorithm" title="Randomized algorithm">Randomized algorithm</a></li> <li><a href="/wiki/Computational_geometry" title="Computational geometry">Computational geometry</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Mathematics of <a href="/wiki/Computing" title="Computing">computing</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Discrete_mathematics" title="Discrete mathematics">Discrete mathematics</a></li> <li><a href="/wiki/Probability" title="Probability">Probability</a></li> <li><a href="/wiki/Statistics" title="Statistics">Statistics</a></li> <li><a href="/wiki/Mathematical_software" title="Mathematical software">Mathematical software</a></li> <li><a href="/wiki/Information_theory" title="Information theory">Information theory</a></li> <li><a href="/wiki/Mathematical_analysis" title="Mathematical analysis">Mathematical analysis</a></li> <li><a href="/wiki/Numerical_analysis" title="Numerical analysis">Numerical analysis</a></li> <li><a href="/wiki/Theoretical_computer_science" title="Theoretical computer science">Theoretical computer science</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Information_system" title="Information system">Information systems</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Database" title="Database">Database management system</a></li> <li><a href="/wiki/Computer_data_storage" title="Computer data storage">Information storage systems</a></li> <li><a href="/wiki/Enterprise_information_system" title="Enterprise information system">Enterprise information system</a></li> <li><a href="/wiki/Social_software" title="Social software">Social information systems</a></li> <li><a href="/wiki/Geographic_information_system" title="Geographic information system">Geographic information system</a></li> <li><a href="/wiki/Decision_support_system" title="Decision support system">Decision support system</a></li> <li><a href="/wiki/Process_control" class="mw-redirect" title="Process control">Process control system</a></li> <li><a href="/wiki/Multimedia_database" title="Multimedia database">Multimedia information system</a></li> <li><a href="/wiki/Data_mining" title="Data mining">Data mining</a></li> <li><a href="/wiki/Digital_library" title="Digital library">Digital library</a></li> <li><a href="/wiki/Computing_platform" title="Computing platform">Computing platform</a></li> <li><a href="/wiki/Digital_marketing" title="Digital marketing">Digital marketing</a></li> <li><a href="/wiki/World_Wide_Web" title="World Wide Web">World Wide Web</a></li> <li><a href="/wiki/Information_retrieval" title="Information retrieval">Information retrieval</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Computer_security" title="Computer security">Security</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Cryptography" title="Cryptography">Cryptography</a></li> <li><a href="/wiki/Formal_methods" title="Formal methods">Formal methods</a></li> <li><a href="/wiki/Security_hacker" title="Security hacker">Security hacker</a></li> <li><a href="/wiki/Security_service_(telecommunication)" title="Security service (telecommunication)">Security services</a></li> <li><a href="/wiki/Intrusion_detection_system" title="Intrusion detection system">Intrusion detection system</a></li> <li><a href="/wiki/Hardware_security" title="Hardware security">Hardware security</a></li> <li><a href="/wiki/Network_security" title="Network security">Network security</a></li> <li><a href="/wiki/Information_security" title="Information security">Information security</a></li> <li><a href="/wiki/Application_security" title="Application security">Application security</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Human%E2%80%93computer_interaction" title="Human–computer interaction">Human–computer interaction</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Interaction_design" title="Interaction design">Interaction design</a></li> <li><a href="/wiki/Social_computing" title="Social computing">Social computing</a></li> <li><a href="/wiki/Ubiquitous_computing" title="Ubiquitous computing">Ubiquitous computing</a></li> <li><a href="/wiki/Visualization_(graphics)" title="Visualization (graphics)">Visualization</a></li> <li><a href="/wiki/Computer_accessibility" title="Computer accessibility">Accessibility</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Concurrency_(computer_science)" title="Concurrency (computer science)">Concurrency</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Concurrent_computing" title="Concurrent computing">Concurrent computing</a></li> <li><a href="/wiki/Parallel_computing" title="Parallel computing">Parallel computing</a></li> <li><a href="/wiki/Distributed_computing" title="Distributed computing">Distributed computing</a></li> <li><a href="/wiki/Multithreading_(computer_architecture)" title="Multithreading (computer architecture)">Multithreading</a></li> <li><a href="/wiki/Multiprocessing" title="Multiprocessing">Multiprocessing</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Artificial_intelligence" title="Artificial intelligence">Artificial intelligence</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Natural_language_processing" title="Natural language processing">Natural language processing</a></li> <li><a href="/wiki/Knowledge_representation_and_reasoning" title="Knowledge representation and reasoning">Knowledge representation and reasoning</a></li> <li><a href="/wiki/Computer_vision" title="Computer vision">Computer vision</a></li> <li><a href="/wiki/Automated_planning_and_scheduling" title="Automated planning and scheduling">Automated planning and scheduling</a></li> <li><a href="/wiki/Mathematical_optimization" title="Mathematical optimization">Search methodology</a></li> <li><a href="/wiki/Control_theory" title="Control theory">Control method</a></li> <li><a href="/wiki/Philosophy_of_artificial_intelligence" title="Philosophy of artificial intelligence">Philosophy of artificial intelligence</a></li> <li><a href="/wiki/Distributed_artificial_intelligence" title="Distributed artificial intelligence">Distributed artificial intelligence</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Machine_learning" title="Machine learning">Machine learning</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Supervised_learning" title="Supervised learning">Supervised learning</a></li> <li><a href="/wiki/Unsupervised_learning" title="Unsupervised learning">Unsupervised learning</a></li> <li><a href="/wiki/Reinforcement_learning" title="Reinforcement learning">Reinforcement learning</a></li> <li><a href="/wiki/Multi-task_learning" title="Multi-task learning">Multi-task learning</a></li> <li><a href="/wiki/Cross-validation_(statistics)" title="Cross-validation (statistics)">Cross-validation</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/wiki/Computer_graphics" title="Computer graphics">Graphics</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Computer_animation" title="Computer animation">Animation</a></li> <li><a href="/wiki/Rendering_(computer_graphics)" title="Rendering (computer graphics)">Rendering</a></li> <li><a href="/wiki/Photograph_manipulation" title="Photograph manipulation">Photograph manipulation</a></li> <li><a href="/wiki/Graphics_processing_unit" title="Graphics processing unit">Graphics processing unit</a></li> <li><a href="/wiki/Mixed_reality" title="Mixed reality">Mixed reality</a></li> <li><a href="/wiki/Virtual_reality" title="Virtual reality">Virtual reality</a></li> <li><a href="/wiki/Image_compression" title="Image compression">Image compression</a></li> <li><a href="/wiki/Solid_modeling" title="Solid modeling">Solid modeling</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Applied computing</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Quantum_Computing" class="mw-redirect" title="Quantum Computing">Quantum Computing</a></li> <li><a href="/wiki/E-commerce" title="E-commerce">E-commerce</a></li> <li><a href="/wiki/Enterprise_software" title="Enterprise software">Enterprise software</a></li> <li><a href="/wiki/Computational_mathematics" title="Computational mathematics">Computational mathematics</a></li> <li><a href="/wiki/Computational_physics" title="Computational physics">Computational physics</a></li> <li><a href="/wiki/Computational_chemistry" title="Computational chemistry">Computational chemistry</a></li> <li><a href="/wiki/Computational_biology" title="Computational biology">Computational biology</a></li> <li><a href="/wiki/Computational_social_science" title="Computational social science">Computational social science</a></li> <li><a href="/wiki/Computational_engineering" title="Computational engineering">Computational engineering</a></li> <li><a href="/wiki/Template:Differentiable_computing" title="Template:Differentiable computing">Differentiable computing</a></li> <li><a href="/wiki/Health_informatics" title="Health informatics">Computational healthcare</a></li> <li><a href="/wiki/Digital_art" title="Digital art">Digital art</a></li> <li><a href="/wiki/Electronic_publishing" title="Electronic publishing">Electronic publishing</a></li> <li><a href="/wiki/Cyberwarfare" title="Cyberwarfare">Cyberwarfare</a></li> <li><a href="/wiki/Electronic_voting" title="Electronic voting">Electronic voting</a></li> <li><a href="/wiki/Video_game" title="Video game">Video games</a></li> <li><a href="/wiki/Word_processor" title="Word processor">Word processing</a></li> <li><a href="/wiki/Operations_research" title="Operations research">Operations research</a></li> <li><a href="/wiki/Educational_technology" title="Educational technology">Educational technology</a></li> <li><a href="/wiki/Document_management_system" title="Document management system">Document management</a></li></ul> </div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div> <ul><li><span class="noviewer" typeof="mw:File"><span title="Category"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/16px-Symbol_category_class.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/23px-Symbol_category_class.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/31px-Symbol_category_class.svg.png 2x" data-file-width="180" data-file-height="185" /></span></span> <a href="/wiki/Category:Computer_science" title="Category:Computer science">Category</a></li> <li><span class="noviewer" typeof="mw:File"><span title="Outline"><img alt="" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/41/Global_thinking.svg/10px-Global_thinking.svg.png" decoding="async" width="10" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/4/41/Global_thinking.svg/15px-Global_thinking.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/4/41/Global_thinking.svg/21px-Global_thinking.svg.png 2x" data-file-width="130" data-file-height="200" /></span></span> <a href="/wiki/Outline_of_computer_science" title="Outline of computer science">Outline</a></li> <li><span class="noviewer" typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/e/e0/Symbol_question.svg/16px-Symbol_question.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/e/e0/Symbol_question.svg/23px-Symbol_question.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/e/e0/Symbol_question.svg/31px-Symbol_question.svg.png 2x" data-file-width="180" data-file-height="185" /></span></span> <a href="/wiki/Template:Glossaries_of_computers" title="Template:Glossaries of computers">Glossaries</a></li></ul> </div></td></tr></tbody></table></div> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236075235"></div><div role="navigation" class="navbox" aria-labelledby="Software_engineering" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239400231"><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Software_engineering" title="Template:Software engineering"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Software_engineering" title="Template talk:Software engineering"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Software_engineering" title="Special:EditPage/Template:Software engineering"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="Software_engineering" style="font-size:114%;margin:0 4em"><a href="/wiki/Software_engineering" title="Software engineering">Software engineering</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Fields</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a class="mw-selflink selflink">Computer programming</a></li> <li><a href="/wiki/DevOps" title="DevOps">DevOps</a></li> <li><a href="/wiki/Empirical_software_engineering" title="Empirical software engineering">Empirical software engineering</a></li> <li><a href="/wiki/Experimental_software_engineering" title="Experimental software engineering">Experimental software engineering</a></li> <li><a href="/wiki/Formal_methods" title="Formal methods">Formal methods</a></li> <li><a href="/wiki/Requirements_engineering" title="Requirements engineering">Requirements engineering</a></li> <li><a href="/wiki/Search-based_software_engineering" title="Search-based software engineering">Search-based software engineering</a></li> <li><a href="/wiki/Site_reliability_engineering" title="Site reliability engineering">Site reliability engineering</a></li> <li><a href="/wiki/Social_software_engineering" title="Social software engineering">Social software engineering</a></li> <li><a href="/wiki/Software_deployment" title="Software deployment">Software deployment</a></li> <li><a href="/wiki/Software_design" title="Software design">Software design</a></li> <li><a href="/wiki/Software_maintenance" title="Software maintenance">Software maintenance</a></li> <li><a href="/wiki/Software_testing" title="Software testing">Software testing</a></li> <li><a href="/wiki/Systems_analysis" title="Systems analysis">Systems analysis</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Concepts</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Abstraction_(computer_science)" title="Abstraction (computer science)">Abstraction</a></li> <li><a href="/wiki/Component-based_software_engineering" title="Component-based software engineering">Component-based software engineering</a></li> <li><a href="/wiki/Computer_compatibility" title="Computer compatibility">Software compatibility</a> <ul><li><a href="/wiki/Backward_compatibility" title="Backward compatibility">Backward compatibility</a></li> <li><a href="/wiki/Compatibility_layer" title="Compatibility layer">Compatibility layer</a></li> <li><a href="/wiki/Compatibility_mode" title="Compatibility mode">Compatibility mode</a></li> <li><a href="/wiki/Forward_compatibility" title="Forward compatibility">Forward compatibility</a></li> <li><a href="/wiki/Software_incompatibility" title="Software incompatibility">Software incompatibility</a></li></ul></li> <li><a href="/wiki/Data_modeling" title="Data modeling">Data modeling</a></li> <li><a href="/wiki/Enterprise_architecture" title="Enterprise architecture">Enterprise architecture</a></li> <li><a href="/wiki/Functional_specification" title="Functional specification">Functional specification</a></li> <li><a href="/wiki/Modeling_language" title="Modeling language">Modeling language</a></li> <li><a href="/wiki/Programming_paradigm" title="Programming paradigm">Programming paradigm</a></li> <li><a href="/wiki/Software" title="Software">Software</a></li> <li><a href="/wiki/Software_archaeology" title="Software archaeology">Software archaeology</a></li> <li><a href="/wiki/Software_architecture" title="Software architecture">Software architecture</a></li> <li><a href="/wiki/Software_configuration_management" title="Software configuration management">Software configuration management</a></li> <li><a href="/wiki/Software_development_process" title="Software development process">Software development process/methodology</a></li> <li><a href="/wiki/Software_quality" title="Software quality">Software quality</a></li> <li><a href="/wiki/Software_quality_assurance" title="Software quality assurance">Software quality assurance</a></li> <li><a href="/wiki/Software_verification_and_validation" title="Software verification and validation">Software verification and validation</a></li> <li><a href="/wiki/Software_system" title="Software system">Software system</a></li> <li><a href="/wiki/Structured_analysis" title="Structured analysis">Structured analysis</a> <ul><li><a href="/wiki/Essential_systems_analysis" title="Essential systems analysis">Essential analysis</a></li></ul></li> <li><a href="/wiki/CI/CD" title="CI/CD">CI/CD</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Orientations</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Agile_software_development" title="Agile software development">Agile</a></li> <li><a href="/wiki/Aspect-oriented_programming" title="Aspect-oriented programming">Aspect-oriented</a></li> <li><a href="/wiki/Object-oriented_programming" title="Object-oriented programming">Object orientation</a></li> <li><a href="/wiki/Ontology_(information_science)" title="Ontology (information science)">Ontology</a></li> <li><a href="/wiki/Service-oriented_architecture" title="Service-oriented architecture">Service orientation</a></li> <li><a href="/wiki/Systems_development_life_cycle" title="Systems development life cycle">SDLC</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Models</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Developmental</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Agile_software_development" title="Agile software development">Agile</a></li> <li><a href="/wiki/Enterprise_unified_process" title="Enterprise unified process">EUP</a></li> <li><a href="/wiki/Executable_UML" title="Executable UML">Executable UML</a></li> <li><a href="/wiki/Incremental_build_model" title="Incremental build model">Incremental model</a></li> <li><a href="/wiki/Iterative_and_incremental_development" title="Iterative and incremental development">Iterative model</a></li> <li><a href="/wiki/Software_prototyping" title="Software prototyping">Prototype model</a></li> <li><a href="/wiki/Rapid_application_development" title="Rapid application development">RAD</a></li> <li><a href="/wiki/Unified_Process" class="mw-redirect" title="Unified Process">UP</a></li> <li><a href="/wiki/Scrum_(software_development)" title="Scrum (software development)">Scrum</a></li> <li><a href="/wiki/Spiral_model" title="Spiral model">Spiral model</a></li> <li><a href="/wiki/V-model_(software_development)" title="V-model (software development)">V-model</a></li> <li><a href="/wiki/Waterfall_model" title="Waterfall model">Waterfall model</a></li> <li><a href="/wiki/Extreme_programming" title="Extreme programming">XP</a></li> <li><a href="/wiki/Model-driven_engineering" title="Model-driven engineering">Model-driven engineering</a></li> <li><a href="/wiki/Round-trip_engineering" title="Round-trip engineering">Round-trip engineering</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Other</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/ISO/IEC_15504" title="ISO/IEC 15504">SPICE</a></li> <li><a href="/wiki/Capability_Maturity_Model_Integration" title="Capability Maturity Model Integration">CMMI</a></li> <li><a href="/wiki/Data_model" title="Data model">Data model</a></li> <li><a href="/wiki/Entity%E2%80%93relationship_model" title="Entity–relationship model">ER model</a></li> <li><a href="/wiki/Function_model" title="Function model">Function model</a></li> <li><a href="/wiki/Information_model" title="Information model">Information model</a></li> <li><a href="/wiki/Metamodeling" title="Metamodeling">Metamodeling</a></li> <li><a href="/wiki/Object_model" title="Object model">Object model</a></li> <li><a href="/wiki/Systems_modeling" title="Systems modeling">Systems model</a></li> <li><a href="/wiki/View_model" title="View model">View model</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Languages</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/IDEF" title="IDEF">IDEF</a></li> <li><a href="/wiki/Unified_Modeling_Language" title="Unified Modeling Language">UML</a></li> <li><a href="/wiki/Universal_Systems_Language" title="Universal Systems Language">USL</a></li> <li><a href="/wiki/Systems_modeling_language" title="Systems modeling language">SysML</a></li></ul> </div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Related fields</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Computer_science" title="Computer science">Computer science</a></li> <li><a href="/wiki/Computer_engineering" title="Computer engineering">Computer engineering</a></li> <li><a href="/wiki/Information_science" title="Information science">Information science</a></li> <li><a href="/wiki/Project_management" title="Project management">Project management</a></li> <li><a href="/wiki/Risk_management" title="Risk management">Risk management</a></li> <li><a href="/wiki/Systems_engineering" title="Systems engineering">Systems engineering</a></li></ul> </div></td></tr><tr><td class="navbox-abovebelow" colspan="2" style="font-weight:bold;"><div> <ul><li><span class="noviewer" typeof="mw:File"><span title="Commons page"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/12px-Commons-logo.svg.png" decoding="async" width="12" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/18px-Commons-logo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/24px-Commons-logo.svg.png 2x" data-file-width="1024" data-file-height="1376" /></span></span> <a href="https://commons.wikimedia.org/wiki/Category:Software_engineering" class="extiw" title="commons:Category:Software engineering">Commons</a></li> <li><span class="noviewer" typeof="mw:File"><span title="Category"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/16px-Symbol_category_class.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/23px-Symbol_category_class.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/31px-Symbol_category_class.svg.png 2x" data-file-width="180" data-file-height="185" /></span></span> <a href="/wiki/Category:Software_engineering" title="Category:Software engineering">Category</a></li></ul> </div></td></tr></tbody></table></div> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236075235"></div><div role="navigation" class="navbox" aria-labelledby="Software_quality" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239400231"><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Software_quality" title="Template:Software quality"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Software_quality" title="Template talk:Software quality"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Software_quality" title="Special:EditPage/Template:Software quality"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="Software_quality" style="font-size:114%;margin:0 4em"><a href="/wiki/Software_quality" title="Software quality">Software quality</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Qualities</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Internal</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Software_sizing" title="Software sizing">Size</a></li> <li><a href="/wiki/Maintainability#Software_engineering" title="Maintainability">Maintainability</a></li> <li><a href="/wiki/Flexibility_(engineering)" title="Flexibility (engineering)">Flexibility</a></li> <li><a href="/wiki/Software_portability" title="Software portability">Portability</a></li> <li><a href="/wiki/Reusability" title="Reusability">Reusability</a></li> <li><a class="mw-selflink-fragment" href="#Readability_of_source_code">Readability</a></li> <li><a href="/wiki/Scalability" title="Scalability">Scalability</a></li> <li><a href="/wiki/Software_testability" title="Software testability">Testability</a></li> <li><a href="/wiki/Understandability" class="mw-redirect" title="Understandability">Understandability</a></li> <li><a href="/wiki/Loose_coupling" title="Loose coupling">Loose coupling</a></li> <li><a href="/wiki/Orthogonality_(programming)" title="Orthogonality (programming)">Orthogonality</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">External</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Usability" title="Usability">Usability</a></li> <li><a href="/wiki/Reliability_engineering" title="Reliability engineering">Reliability</a></li> <li><a href="/wiki/Adaptability" title="Adaptability">Adaptability</a></li> <li><a href="/wiki/Correctness_(computer_science)" title="Correctness (computer science)">Correctness</a></li> <li><a href="/wiki/Accuracy_and_precision" title="Accuracy and precision">Accuracy</a></li> <li><a href="/wiki/Algorithmic_efficiency" title="Algorithmic efficiency">Efficiency</a></li> <li><a href="/wiki/Robustness_(computer_science)" title="Robustness (computer science)">Robustness</a></li> <li><a href="/wiki/Software_development_security" class="mw-redirect" title="Software development security">Security</a></li> <li><a href="/wiki/Software_system_safety" class="mw-redirect" title="Software system safety">Safety</a></li></ul> </div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Standards and lists</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/ISO/IEC_9126" title="ISO/IEC 9126">ISO/IEC 9126</a></li> <li><a href="/wiki/Non-functional_requirement#Examples" title="Non-functional requirement">Non-functional requirements</a></li> <li><a href="/wiki/List_of_system_quality_attributes" title="List of system quality attributes">List of system quality attributes</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Processes</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Software_quality_management" title="Software quality management">Software quality management</a></li> <li><a href="/wiki/Software_quality_control" title="Software quality control">Software quality control</a></li> <li><a href="/wiki/Software_quality_assurance" title="Software quality assurance">Software quality assurance</a></li></ul> </div></td></tr><tr><td class="navbox-abovebelow" colspan="2" style="font-weight:bold;"><div> <ul><li><span class="noviewer" typeof="mw:File"><span title="Category"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/16px-Symbol_category_class.svg.png" decoding="async" width="16" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/23px-Symbol_category_class.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/96/Symbol_category_class.svg/31px-Symbol_category_class.svg.png 2x" data-file-width="180" data-file-height="185" /></span></span></li> <li><span class="noviewer" typeof="mw:File"><span title="Commons page"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/12px-Commons-logo.svg.png" decoding="async" width="12" height="16" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/18px-Commons-logo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/4/4a/Commons-logo.svg/24px-Commons-logo.svg.png 2x" data-file-width="1024" data-file-height="1376" /></span></span> <a href="https://commons.wikimedia.org/wiki/Category:Software_quality" class="extiw" title="commons:Category:Software quality">Commons</a></li></ul> </div></td></tr></tbody></table></div> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236075235"><style data-mw-deduplicate="TemplateStyles:r1038841319">.mw-parser-output .tooltip-dotted{border-bottom:1px dotted;cursor:help}</style><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1038841319"></div><div role="navigation" class="navbox authority-control" aria-labelledby="Authority_control_databases_frameless&#124;text-top&#124;10px&#124;alt=Edit_this_at_Wikidata&#124;link=https&#58;//www.wikidata.org/wiki/Q80006#identifiers&#124;class=noprint&#124;Edit_this_at_Wikidata" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Authority_control_databases_frameless&#124;text-top&#124;10px&#124;alt=Edit_this_at_Wikidata&#124;link=https&#58;//www.wikidata.org/wiki/Q80006#identifiers&#124;class=noprint&#124;Edit_this_at_Wikidata" style="font-size:114%;margin:0 4em"><a href="/wiki/Help:Authority_control" title="Help:Authority control">Authority control databases</a> <span class="mw-valign-text-top noprint" typeof="mw:File/Frameless"><a href="https://www.wikidata.org/wiki/Q80006#identifiers" title="Edit this at Wikidata"><img alt="Edit this at Wikidata" src="//upload.wikimedia.org/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png" decoding="async" width="10" height="10" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/15px-OOjs_UI_icon_edit-ltr-progressive.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/20px-OOjs_UI_icon_edit-ltr-progressive.svg.png 2x" data-file-width="20" data-file-height="20" /></a></span></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">International</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"><ul><li><span class="uid"><a rel="nofollow" class="external text" href="http://id.worldcat.org/fast/872390/">FAST</a></span></li></ul></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">National</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"><ul><li><span class="uid"><a rel="nofollow" class="external text" href="https://d-nb.info/gnd/4076370-5">Germany</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://id.loc.gov/authorities/sh85107310">United States</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://catalogue.bnf.fr/ark:/12148/cb11932648m">France</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://data.bnf.fr/ark:/12148/cb11932648m">BnF data</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://id.ndl.go.jp/auth/ndlna/00569223">Japan</a></span></li><li><span class="uid"><span class="rt-commentedText tooltip tooltip-dotted" title="programování"><a rel="nofollow" class="external text" href="https://aleph.nkp.cz/F/?func=find-c&local_base=aut&ccl_term=ica=ph115891&CON_LNG=ENG">Czech Republic</a></span></span></li><li><span class="uid"><span class="rt-commentedText tooltip tooltip-dotted" title="Programación de ordenadores"><a rel="nofollow" class="external text" href="http://catalogo.bne.es/uhtbin/authoritybrowse.cgi?action=display&authority_id=XX526555">Spain</a></span></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="http://olduli.nli.org.il/F/?func=find-b&local_base=NLX10&find_code=UID&request=987007538691605171">Israel</a></span></li></ul></div></td></tr></tbody></table></div> <!-- NewPP limit report Parsed by mw‐web.codfw.main‐f69cdc8f6‐5zrpf Cached time: 20241123013420 Cache expiry: 2592000 Reduced expiry: false Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 0.630 seconds Real time usage: 0.804 seconds Preprocessor visited node count: 3579/1000000 Post‐expand include size: 161184/2097152 bytes Template argument size: 2676/2097152 bytes Highest expansion depth: 14/100 Expensive parser function count: 15/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 147710/5000000 bytes Lua time usage: 0.374/10.000 seconds Lua memory usage: 6485464/52428800 bytes Number of Wikibase entities loaded: 1/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 639.311 1 -total 32.27% 206.278 1 Template:Reflist 16.99% 108.598 11 Template:Cite_web 14.53% 92.863 1 Template:Software_development_process 13.95% 89.214 1 Template:Sidebar_with_collapsible_lists 9.29% 59.411 1 Template:Short_description 8.76% 55.989 5 Template:Navbox 8.05% 51.467 10 Template:Cite_journal 7.14% 45.653 1 Template:Computer_science 5.66% 36.189 2 Template:Pagetype --> <!-- Saved in parser cache with key enwiki:pcache:5311:|#|:idhash:canonical and timestamp 20241123013420 and revision id 1259007373. Rendering was triggered because: page-view --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://en.wikipedia.org/w/index.php?title=Computer_programming&oldid=1259007373">https://en.wikipedia.org/w/index.php?title=Computer_programming&oldid=1259007373</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Help:Category" title="Help:Category">Categories</a>: <ul><li><a href="/wiki/Category:Computer_programming" title="Category:Computer programming">Computer programming</a></li><li><a href="/wiki/Category:Computers" title="Category:Computers">Computers</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Hidden categories: <ul><li><a href="/wiki/Category:Webarchive_template_wayback_links" title="Category:Webarchive template wayback links">Webarchive template wayback links</a></li><li><a href="/wiki/Category:Articles_with_short_description" title="Category:Articles with short description">Articles with short description</a></li><li><a href="/wiki/Category:Short_description_is_different_from_Wikidata" title="Category:Short description is different from Wikidata">Short description is different from Wikidata</a></li><li><a href="/wiki/Category:Use_mdy_dates_from_November_2020" title="Category:Use mdy dates from November 2020">Use mdy dates from November 2020</a></li><li><a href="/wiki/Category:Use_American_English_from_November_2020" title="Category:Use American English from November 2020">Use American English from November 2020</a></li><li><a href="/wiki/Category:All_Wikipedia_articles_written_in_American_English" title="Category:All Wikipedia articles written in American English">All Wikipedia articles written in American English</a></li><li><a href="/wiki/Category:Commons_category_link_is_on_Wikidata" title="Category:Commons category link is on Wikidata">Commons category link is on Wikidata</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 22 November 2024, at 21:48<span class="anonymous-show"> (UTC)</span>.</li> <li id="footer-info-copyright">Text is available under the <a href="/wiki/Wikipedia:Text_of_the_Creative_Commons_Attribution-ShareAlike_4.0_International_License" title="Wikipedia:Text of the Creative Commons Attribution-ShareAlike 4.0 International License">Creative Commons Attribution-ShareAlike 4.0 License</a>; additional terms may apply. By using this site, you agree to the <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use" class="extiw" title="foundation:Special:MyLanguage/Policy:Terms of Use">Terms of Use</a> and <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy" class="extiw" title="foundation:Special:MyLanguage/Policy:Privacy policy">Privacy Policy</a>. Wikipedia® is a registered trademark of the <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:About">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:General_disclaimer">Disclaimers</a></li> <li id="footer-places-contact"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//en.m.wikipedia.org/w/index.php?title=Computer_programming&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-f69cdc8f6-vthpd","wgBackendResponseTime":163,"wgPageParseReport":{"limitreport":{"cputime":"0.630","walltime":"0.804","ppvisitednodes":{"value":3579,"limit":1000000},"postexpandincludesize":{"value":161184,"limit":2097152},"templateargumentsize":{"value":2676,"limit":2097152},"expansiondepth":{"value":14,"limit":100},"expensivefunctioncount":{"value":15,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":147710,"limit":5000000},"entityaccesscount":{"value":1,"limit":400},"timingprofile":["100.00% 639.311 1 -total"," 32.27% 206.278 1 Template:Reflist"," 16.99% 108.598 11 Template:Cite_web"," 14.53% 92.863 1 Template:Software_development_process"," 13.95% 89.214 1 Template:Sidebar_with_collapsible_lists"," 9.29% 59.411 1 Template:Short_description"," 8.76% 55.989 5 Template:Navbox"," 8.05% 51.467 10 Template:Cite_journal"," 7.14% 45.653 1 Template:Computer_science"," 5.66% 36.189 2 Template:Pagetype"]},"scribunto":{"limitreport-timeusage":{"value":"0.374","limit":"10.000"},"limitreport-memusage":{"value":6485464,"limit":52428800}},"cachereport":{"origin":"mw-web.codfw.main-f69cdc8f6-5zrpf","timestamp":"20241123013420","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Computer programming","url":"https:\/\/en.wikipedia.org\/wiki\/Computer_programming","sameAs":"http:\/\/www.wikidata.org\/entity\/Q80006","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q80006","author":{"@type":"Organization","name":"Contributors to Wikimedia projects"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2001-10-25T21:53:15Z","dateModified":"2024-11-22T21:48:10Z","headline":"the process of designing and building an executable computer program to accomplish a specific computing result or to perform a specific task"}</script> </body> </html>