Programmer

From Wikipedia for FEVERv2
(Redirected from Software developer)
Jump to navigation Jump to search

This article is about people who write computer software. Programmer_sentence_0

For other uses, see Programmer (disambiguation). Programmer_sentence_1

"Coder" redirects here. Programmer_sentence_2

For someone who performs coding in the social sciences, see Coding (social sciences). Programmer_sentence_3

For someone who performs medical coding, see Clinical coder. Programmer_sentence_4

For the unincorporated community in Pennsylvania, see Coder, Pennsylvania. Programmer_sentence_5

Programmer_table_infobox_0

Computer programmerProgrammer_table_caption_0
OccupationProgrammer_header_cell_0_0_0
NamesProgrammer_header_cell_0_1_0 Computer ProgrammerProgrammer_cell_0_1_1
Occupation typeProgrammer_header_cell_0_2_0 ProfessionProgrammer_cell_0_2_1
Activity sectorsProgrammer_header_cell_0_3_0 Information technology, Software industryProgrammer_cell_0_3_1
DescriptionProgrammer_header_cell_0_4_0
CompetenciesProgrammer_header_cell_0_5_0 Writing and debugging computer code, documentation tasks. Some design and development work is often performed.Programmer_cell_0_5_1
Education requiredProgrammer_header_cell_0_6_0 Varies from apprenticeship to bachelor's degree in related fieldProgrammer_cell_0_6_1

A computer programmer, sometimes called a software developer, a programmer or more recently a coder (especially in more informal contexts), is a person who creates computer software. Programmer_sentence_6

The term computer programmer can refer to a specialist in one area of computers, or to a generalist who writes code for many kinds of software. Programmer_sentence_7

A programmer's most oft-used computer language (e.g., Assembly, COBOL, C, C++, C#, JavaScript, Lisp, Python) may be prefixed to the term programmer. Programmer_sentence_8

Some who work with web programming languages also prefix their titles with web. Programmer_sentence_9

History Programmer_section_0

British countess and mathematician Ada Lovelace is often considered to be the first computer programmer, as she was the first to publish part of a program (specifically an algorithm) intended for implementation on Charles Babbage's analytical engine, in October 1842. Programmer_sentence_10

The algorithm was used to calculate Bernoulli numbers. Programmer_sentence_11

Because Babbage's machine was never completed as a functioning standard in Lovelace's time, she never had the opportunity to see the algorithm in action. Programmer_sentence_12

The first person to execute a program on a functioning, modern, electronic computer was the computer scientist Konrad Zuse, in 1941. Programmer_sentence_13

The ENIAC programming team, consisting of Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas and Ruth Lichterman were the first regularly working programmers. Programmer_sentence_14

The software industry Programmer_section_1

Main article: Software industry Programmer_sentence_15

The first company founded specifically to provide software products and services was the Computer Usage Company, in 1955. Programmer_sentence_16

Before that time, computers were programmed either by customers or the few commercial computer manufacturers of the time, such as Sperry Rand and IBM. Programmer_sentence_17

The software industry expanded in the early 1960s, almost immediately after computers were first sold in mass-produced quantities. Programmer_sentence_18

Universities, governments, and businesses created a demand for software. Programmer_sentence_19

Many of these programs were written in-house by full-time staff programmers; some were distributed between users of a particular machine for no charge, while others were sold on a commercial basis. Programmer_sentence_20

Other firms, such as Computer Sciences Corporation (founded in 1959) also started to grow. Programmer_sentence_21

Computer manufacturers soon started bundling operating systems, system software and programming environments with their machines. Programmer_sentence_22

The industry expanded greatly with the rise of the personal computer (PC) in the mid-1970s, which brought computing to the average office worker. Programmer_sentence_23

In the following years the PC also helped create a constantly-growing market for games, applications and utilities software. Programmer_sentence_24

In the early years of the 21st century, another successful business model has arisen for hosted software, called software-as-a-service, or SaaS. Programmer_sentence_25

From the point of view of producers of some proprietary software, SaaS reduces the concerns about unauthorized copying, since it can only be accessed through the Web, and by definition, no client software is loaded onto the end user's PC. Programmer_sentence_26

SaaS is typically run out of the cloud. Programmer_sentence_27

Nature of the work Programmer_section_2

Computer programmers write, test, debug, and maintain the detailed instructions, called computer programs, that computers must follow to perform their functions. Programmer_sentence_28

Programmers also conceive, design, and test logical structures for solving problems by computer. Programmer_sentence_29

Many technical innovations in programming — advanced computing technologies and sophisticated new languages and programming tools — have redefined the role of a programmer and elevated much of the programming work done today. Programmer_sentence_30

Job titles and descriptions may vary, depending on the organization. Programmer_sentence_31

Programmers work in many settings, including corporate information technology (IT) departments, big software companies, small service firms and government entities of all sizes. Programmer_sentence_32

Many professional programmers also work for consulting companies at client sites as contractors. Programmer_sentence_33

Licensing is not typically required to work as a programmer, although professional certifications are commonly held by programmers. Programmer_sentence_34

Programming is widely considered a profession (although some authorities disagree on the grounds that only careers with legal licensing requirements count as a profession). Programmer_sentence_35

Programmers' work varies widely depending on the type of business for which they are writing programs. Programmer_sentence_36

For example, the instructions involved in updating financial records are very different from those required to duplicate conditions on an aircraft for pilots training in a flight simulator. Programmer_sentence_37

Simple programs can be written in a few hours, more complex ones may require more than a year of work, while others are never considered 'complete' but rather are continuously improved as long as they stay in use. Programmer_sentence_38

In most cases, several programmers work together as a team under a senior programmer's supervision. Programmer_sentence_39

Programmers write programs according to the specifications determined primarily by more senior programmers and by systems analysts. Programmer_sentence_40

After the design process is complete, it is the job of the programmer to convert that design into a logical series of instructions that the computer can follow. Programmer_sentence_41

The programmer codes these instructions in one of many programming languages. Programmer_sentence_42

Different programming languages are used depending on the purpose of the program. Programmer_sentence_43

COBOL, for example, is commonly used for business applications that typically run on mainframe and midrange computers, whereas Fortran is used in science and engineering. Programmer_sentence_44

C++ and Python are widely used for both scientific and business applications. Programmer_sentence_45

Java, C#, JS and PHP are popular programming languages for Web and business applications. Programmer_sentence_46

Programmers generally know more than one programming language and, because many languages are similar, they often can learn new languages relatively easily. Programmer_sentence_47

In practice, programmers often are referred to by the language they know, e.g. as Java programmers, or by the type of function they perform or the environment in which they work: for example, database programmers, mainframe programmers, or web developers. Programmer_sentence_48

When making changes to the source code that programs are made up of, programmers need to make other programmers aware of the task that the routine is to perform. Programmer_sentence_49

They do this by inserting comments in the source code so that others can understand the program more easily and by documenting their code. Programmer_sentence_50

To save work, programmers often use libraries of basic code that can be modified or customized for a specific application. Programmer_sentence_51

This approach yields more reliable and consistent programs and increases programmers' productivity by eliminating some routine steps. Programmer_sentence_52

Testing and debugging Programmer_section_3

Programmers test a program by running it and looking for bugs (errors). Programmer_sentence_53

As they are identified, the programmer usually makes the appropriate corrections, then rechecks the program until an acceptably low level and severity of bugs remain. Programmer_sentence_54

This process is called testing and debugging. Programmer_sentence_55

These are important parts of every programmer's job. Programmer_sentence_56

Programmers may continue to fix these problems throughout the life of a program. Programmer_sentence_57

Updating, repairing, modifying, and expanding existing programs is sometimes called maintenance programming. Programmer_sentence_58

Programmers may contribute to user guides and online help, or they may work with technical writers to do such work. Programmer_sentence_59

Application versus system programming Programmer_section_4

Computer programmers often are grouped into two broad types: application programmers and systems programmers. Programmer_sentence_60

Application programmers write programs to handle a specific job, such as a program to track inventory within an organization. Programmer_sentence_61

They also may revise existing packaged software or customize generic applications which are frequently purchased from independent software vendors. Programmer_sentence_62

Systems programmers, in contrast, write programs to maintain and control computer systems software, such as operating systems and database management systems. Programmer_sentence_63

These workers make changes in the instructions that determine how the network, workstations, and CPU of the system handle the various jobs they have been given and how they communicate with peripheral equipment such as printers and disk drives. Programmer_sentence_64

Qualifications and skills Programmer_section_5

A programmer needs to have technical expertise with certain aspects of computing. Programmer_sentence_65

Some positions will require a degree in a relevant field such as computer science, information technology, engineering, programming, or other related studies. Programmer_sentence_66

An ideal programmer is a one who possesses hands-on experience with key programming languages such as C++, C#, PHP, Java, C, JavaScript, Visual Basic, Python, and Smalltalk. Programmer_sentence_67

Types of software Programmer_section_6

Programmers may work directly with experts from different fields to create software – either programs designed for specific clients or packaged software for general use – ranging from video games to educational software to programs for desktop publishing or financial applications. Programmer_sentence_68

Programming of packaged software constitutes one of the most rapidly growing segments of the computer services industry. Programmer_sentence_69

Some companies or organizations – even small ones – have set up their own IT team to ensure the design and development of in-house software to answer to very specific needs from their internal end-users, especially when existing software are not suitable or too expensive. Programmer_sentence_70

This is, for example, the case in research laboratories. Programmer_sentence_71

In some organizations, particularly small ones, people commonly known as programmer analysts are responsible for both the systems analysis and the actual programming work. Programmer_sentence_72

The transition from a mainframe environment to one that is based primarily on personal computers (PCs) has blurred the once rigid distinction between the programmer and the user. Programmer_sentence_73

Increasingly, adept end-users are taking over many of the tasks previously performed by programmers. Programmer_sentence_74

For example, the growing use of packaged software, such as spreadsheet and database management software packages, allows users to write simple programs to access data and perform calculations. Programmer_sentence_75

In addition, the rise of the Internet has made web development a huge part of the programming field. Programmer_sentence_76

Currently, more software applications are web applications that can be used by anyone with a web browser. Programmer_sentence_77

Examples of such applications include the Google search service, the Outlook.com e-mail service, and the Flickr photo-sharing service. Programmer_sentence_78

Programming editors, also known as source code editors, are text editors that are specifically designed for programmers or developers for writing the source code of an application or a program. Programmer_sentence_79

Most of these editors include features useful for programmers, which may include color syntax highlighting, auto indentation, auto-complete, bracket matching, syntax check, and allows plug-ins. Programmer_sentence_80

These features aid the users during coding, debugging and testing. Programmer_sentence_81

Globalization Programmer_section_7

Market changes in the UK Programmer_section_8

According to BBC News, 17% of computer science students could not find work in their field 6 months after graduation in 2009 which was the highest rate of the university subjects surveyed while 0% of medical students were unemployed in the same survey. Programmer_sentence_82

Market changes in the US Programmer_section_9

After the crash of the dot-com bubble (1999–2001), many U.S. programmers were left without work or with lower wages. Programmer_sentence_83

In addition, enrollment in computer-related degrees in the US has dropped for years, especially for women, which, according to Beaubouef and Mason could be attributed to a lack of general interest in science and mathematics and also out of an apparent fear that programming will be subject to the same pressures as manufacturing and agriculture careers. Programmer_sentence_84

The U.S. Bureau of Labor Statistics Occupational Outlook 2016-26 shows a decline of 7 percent and a decline of 9 percent from 2019 to 2029. Programmer_sentence_85

See also Programmer_section_10

Programmer_unordered_list_0


Credits to the contents of this page go to the authors of the corresponding Wikipedia page: en.wikipedia.org/wiki/Programmer.