Fall2010-2nd+Yr

Check Out this site for Technology Research News: [|Science Daily & Computer Programming]
 * Marking Period 1 - Review of Java Programming Concepts**

__**1**__st __**& 2**__nd __**Year Students**__ **History of Computers**
 * Week Sept. 13, 2010** -


 * 1) **1837** – Charles Babbage – first to conceptualize and design a fully programmable mechanical computer, his __[|analytical engine]__ . Limited finances and Babbage's inability to resist tinkering with the design meant that the device was never completed.
 * 2) **1880** - __[|Herman Hollerith]__ invented the recording of data on a machine readable medium. To process these punched cards he invented the __[|tabulator]__, and the __[|keypunch]__ machines. These three inventions were the foundation of the modern information processing industry. Large-scale automated data processing of punched cards was performed for the __[|1890 United States Census]__ by Hollerith's company, which later became the core of __[|IBM]__.
 * 3) **1936** – __[|Alan Turing]__ is widely regarded to be the father of modern __[|computer science]__ . In 1936 Turing provided an influential formalization of the concept of the __[|algorithm]__ and __[|computation]__ with the __[|Turing machine]__, providing a blueprint for the electronic digital computer. Of his role in the creation of the modern computer, __[|//Time//]__ magazine in naming Turing one of the __[|100 most influential]__ people of the 20th century, states: "The fact remains that everyone who taps at a keyboard, opening a spreadsheet or a word-processing program, is working on an incarnation of a Turing machine".
 * 4) **1940's** – ENIAC – Electronic Numerical Integrator and Computer - first electronic computer used by the US military for ballistic calculations. Initially, however, ENIAC had an inflexible architecture which essentially required rewiring to change its programming.

Semiconductors and microprocessors 1950s – 1970s

 * Vacuum tubes
 * Transistor-based machines - smaller, faster, cheaper and required less power, more reliable
 * integrated circuit technology → microprocessors – smaller, faster, cheaper, more reliable


 * 1) **1950's** – IBM sold its first business computer
 * 2) **1960's** – time-sharing – allowed people to work simultaneously on a computer using the telephone system and teletype machines.
 * 3) **1970's** – networks (Internet), e-mail and file transfers
 * 4) 1980's – PC – IBM first personal computer
 * 5) 1990's - WWW – people at home started to join the Internet – EXPLOSION in computer although still primitive by today's standards.

__**Computer System**__ **= Hardware & Software used as a tool to do a variety of tasks determined by programs**

Programs are written by programmers to create tools such as: **????** and to perform tasks such as: **????**

**Software Development Life Cycle** – used to develop software

**Computer Programming Languages**
 * originally written in low level languages like assembler (0001111s) – DIFFICULT
 * current 4 th generation languages that are more English-like - EASIER

**Many languages. Which to use????** The language is determined by the companies requirements, resources ...programming staff's training & platforms, budget constraints, etc. A feasibility report determines outcome. **Feasibility Report** – examines:
 * the goals and requirements of the proposed system
 * its estimated costs
 * if it is economically viable
 * if it is technically possible
 * any legal issues
 * estimated completion time

**Programming steps:** >
 * 1) **Requirements**
 * 2) **Design** is facilitated by
 * 3) **algorithms** = a precise rule (or set of rules) specifying how to solve some problem
 * 4) **pseudocode** = is a compact and informal high-level description of a computer programming algorithm that uses the structural conventions of a programming
 * 5) **flowcharts** = common type of diagram, that represents an algorithm or process, showing the steps as boxes of various kind
 * 1) **Development**
 * 2)  Write program English-like code = **Source Code (hello.java)**
 * 3) **Compiler/Interpreter** converts the source code into machine readable code (binary = 0s & 1s), Java = B **ytecode** (hello.java **- - >** hello.class)
 * 4) **Execute** the machine code (bytecode= .class file) to run the program.

**Programming Languages have evolved:** Low level (assembler or machine language 000111s) to high level, 4th generation languages like Java

**Computers have impacted the world!!!**

** How has computer and technology changed the world? ** List Positives/Negatives for each: Workplace Education – What is the digital divide? Leisure Environment Health - __[]__

=
==========================================================================================================