Monday, September 30, 2013

computer programming

Computer programming (often shortened to programming) is the comprehensive process that leads from an original formulation of a computing problem to executable programs. It involves activities such as analysis, understanding, and generically solving such problems resulting in an algorithm, verification of requirements of the algorithm including its correctness and its resource consumption, implementation (or coding) of the algorithm in a target programming language, testing, debugging, and maintaining the source code, implementation of the build system and management of derived artefacts such as machine code of computer programs. The algorithm is often only represented in human-parseable form and reasoned about using logic. Source code is written in one or more programming languages (such as C++, C#, Java, Python, Smalltalk, JavaScript,etc.). The purpose of programming is to find a sequence of instructions that will automate performing a specific task or solve a given problem. The process of programming thus often requires expertise in many different subjects, including knowledge of the application domain, specialized algorithms and formal logic.
Within software engineering, programming (the implementation) is regarded as one phase in a software development process


There is an on-going debate on the extent to which the writing of programs is an art form, a craft, or an engineering discipline.[1] In general, good programming is considered to be the measured application of all three, with the goal of producing an efficient and evolvable software solution (the criteria for "efficient" and "evolvable" vary considerably). The discipline differs from many other technical professions in that programmers, in general, do not need to be licensed or pass any standardized (or governmentally regulated) certification tests in order to call themselves "programmers" or even "software engineers." Because the discipline covers many areas, which may or may not include critical applications, it is debatable whether licensing is required for the profession as a whole. In most cases, the discipline is self-governed by the entities which require the programming, and sometimes very strict environments are defined (e.g. United States Air Force use of AdaCore and security clearance). However, representing oneself as a "Professional Software Engineer" without a license from an accredited institution is illegal in many parts of the world.

Another on-going debate is the extent to which the programming language used in writing computer programs affects the form that the final program takes. This debate is analogous to that surrounding the Sapir–Whorf hypothesis[2] in linguistics and cognitive science, which postulates that a particular spoken language's nature influences the habitual thought of its speakers. Different language patterns yield different patterns of thought. This idea challenges the possibility of representing the world perfectly with language, because it acknowledges that the mechanisms of any language condition the thoughts of its speaker community
Generation of the computer

In the late 1960s till early 1970s, there was much talk about "generations" of computer hardware — usually "three generations".

    First generation: Vacuum tubes. Mid-1940s. IBM pioneered the arrangement of vacuum tubes in pluggable modules. The IBM 650 was a first-generation computer.
    Second generation: Transistors. 1956. The era of miniaturization begins. Transistors are much smaller than vacuum tubes, draw less power, and generate less heat. Discrete transistors are soldered to circuit boards, with interconnections accomplished by stencil-screened conductive patterns on the reverse side. The IBM 7090 was a second-generation computer.
    Third generation: Integrated circuits (silicon chips containing multiple transistors). 1964. A pioneering example is the ACPX module used in the IBM 360/91, which, by stacking layers of silicon over a ceramic substrate, accommodated over 20 transistors per chip; the chips could be packed together onto a circuit board to achieve unheard-of logic densities. The IBM 360/91 was a hybrid second- and third-generation computer.

Omitted from this taxonomy is the "zeroth-generation" computer based on metal gears (such as the IBM 4077[citation needed]) or mechanical relays (such as the Mark I), and the post-third-generation computers based on Very Large Scale Integrated (VLSI) circuits.

There was also a parallel set of generations for software:

    First generation: Machine language.
    Second generation: Assembly language.
    Third generation: Structured programming languages such as C, COBOL and FORTRAN.
    Fourth generation: Domain-specific languages such as SQL (for database access) and TeX (for text formatting)

Background and design philosophy

Throughout these multiple generations up to the 1990s, Japan had largely been a follower in the computing arena, building computers following U.S. and British leads. The Ministry of International Trade and Industry (MITI) decided to attempt to break out of this follow-the-leader pattern, and in the mid-1970s started looking, on a small scale, into the future of computing. They asked the Japan Information Processing Development Center (JIPDEC) to indicate a number of future directions, and in 1979 offered a three-year contract to carry out more in-depth studies along with industry and academia. It was during this period that the term "fifth-generation computer" started to be used.

Computer

A computer is an electronic machine, which needs raw data to proceed user requirements. The father of computer was a Charles Babbage. Computer performs three activities: Input, Process  and Output. User ,gives raw data to the computer and central Processing unit (C.P.U ) proceed the given data into meaningful information and provide the result to the user as output.
CPU is the main brain of the computer and all processing function is done in the CPU parts. Mathematical and logical function are also perform in the CPU. CPU is also known as the Microprocessor.

Nowdays, computer are made in different sizes i.e Desktop Computer, Laptop Computer , Palmtop Computer.
Desktop computer is a medium _sized computer. It is made in such a way that it can fit on a table . Ti has many parts attached to it, so it cannot be carried around easily.

Computer consists different parts i.e System Unit, monitor, Input device, Output device, CPU, cable etc.
Input device  are the hardware components that enable users to interact  with a computer. Without input device you would not be able to feed instruction to a computer. Most common input device are the mouse, Scanner, Keyboard. Webcamera, Microphone, Joystick etc.
Outputdevice are those device that sends result to the user. Example of output devices are:Monotor, Speaker etc.
Advantages of computer are:
-It makes our life more easier and comfortable.
-It makes our work fast.
-We can touch with frends and relatives who are staying at far distance.
-We can chat with frends and relatives.
-Playing games. watching movies, listening music