Notes about Computers and Society (from a class at Simon Fraser University in 2003)

Failsafe was about

Computer reliability

Large scale computer systems

Define Reliability

Probability it will not fail during a given period of operation and given conditions

Sources of unreliability

Design/development, operation, maintenance

Major problem

Software unreliability “Software crisis”


Exponential growth (Moore’s Law),

Complexity breeds deterministic chaos

Human factor = Need good people.

Size of software projects

Big = > 10^7 lines

Titanic Effect:

Severity with which a system fails is directly proportional to intensity of belief that it cannot.

Warfare in Information Age

World is run by who controls the energy, not the resources(!)

War is always present.

Atomic bombs are weaker than nuclear bombs.

Definition of warfare?

Symbiosis between Computing and Military

Galileo Galilei: Compass, Telescope, Ballistics

Turing: Cryptography

Strong encryption

Algorithm is known, key is not.

Weak encryption

Relies on the security of the algorithm and the key.

How to break codes?

National Security Agency brute force

How has war changed?

War has become a lucrative business (defining recessions/recoveries)

Definition of Information Warfare?

Offensive/devensive use of information/systems to exploit, corrupt, destroy and adversary’s information/systems while protecting one’s own. Achieve advantages over adversaries.


Command Contol Communications, Intelligence

Weaponry examples

Viruses, worms, torjan horses, logic bombs, trap doors, chipping, HERF guns and EMP bombs.


Smart weapons

Why AI?

To overcome inadequate specification

Simulation of nuclear tests?

To help the environment. Trillion operations per second (TOPS)

Definition of Economics

Study of how decisions are made regarding scarce resources

Withington 5 generations of computers

1,2,3: Initiation and consolidation phase

4: Databases and timesharing

5th: Decentralization

Systems development view of IT Industry

Hardware constraints, Software constraints, User Relations constraints, Organizational environment constraints

Four waves of change:

Mainframes and minicomputers

PCs Lans

Information Highways

Information society


Declining cost of computing

Rising Investment in IT

Moore’s law.

Productivity paradox

No productivity increase due to computers?

Areas demonstrating productivity paradox:

Banking, manufacturing, office, government

Central questions:

Why would companies invest in info tech if it did not add to productivity?

Why is productivity increase so hard to measure?


Can’t simply find a relationship between the productivity slowdown and growth in computer capital.

Transition from what into what?

Between the mechanized economy and the digital economy.


Philosophical study of beauty and taste


“use of skill and imagination in the creation of aesthetic objects, environments, or experiences”

Not a natural object, functions aesthetically in the human experience

Divergent / creative thinking

Leads to new info, undiscovered solutions

Can computers be creative?


Lady Lovelace Objection

Can do whatever we know how to order it to perform.

How to refute?

We can program them to learn from their experience.

Visual Literacy

Ability to craft, organize and decode a message

Determines membership or exclusion from a given community

Technological Literacy

Sophistication / skill with certain materials and tools

Underlies how we communicate.

Artists have what?

Both of these.

Advantage of digital computers?

Reduce computational noise level.

Accuracy guaranteed.


No drift in performance due to temp or age.


Digital signal processing

Computers and music, how?

Digitally representing sound, manipulating, designing the compositional process.

Cons of computerized visual arts:




Disjointedness (hand vs eye)

Loss of aesthetic sense and sensual pleasure gained from direct handling of materials

Legal issues


Home studios



Databases and history

Allows less talented people to work


Greater risks (undo)

Open new doors: motion pictures from photography



Two paradigms:

Symbolic and Neural Networks

Branches of Symbolic

Computer science and Cognitive science

Cognitive science branches into:

Weak AI and Strong AI

Weak AI concerned with:

Knowledge representation and search methods (heuristics). Machines acting as if they were intelligent.

Symbolic Paradigm:

Keep knowledge separate from inference engine

Knowledge base is more important

Neural Networks / Connectionist Paradigm

Analog computation, linked network of very simple processors. Learning. No separation of knowledge from the inference mechanism.

Hybrid schemes

Combine symbolic and Neural Networks paradigms


What is intelligence? What does “artificial” mean?

Four approaches on defining AI?

Thinking Humanly (Cognitive Modeling Approach)

Acting Humanly (Turing Test Approach)

Thinking Rationally (Laws of Thought approach)

Acting Rationally (Rational agent approach)

Three approaches to AI Research

Case Based (stored problems/solution)
Rule based (Expert systems, brittle)

Connectionist (Don’t know how the problem gets solved, it just does)

Turing test

Natural language processing

Knowledge representation

Automated reasoning to use the stored information

Machine learning to adapt to new circumstances

HAL Prerequisites:

Vision (eyes) Text to speech synthesis. Language usage / knowledge.

Emotions for a computer?

An emergent property? What is emotion?

What is Strong AI?

Machines that act intelligently have real, conscious minds.

Discontinuities? (mazlish)



Extension of Darwinism to Mind

Animate – Inanimate

“Astonishing Hypothesis”?

Mental activites are physical (materialist)

Chinese Room Argument

Computer programs are formal (syntactic)

Human minds have mental contents (semantics)
Syntax will not constitute or is sufficient for semantics

Neural networks:

Could they bring about Strong AI?

Software Aspects of Strategic Defense Systems

David Parnas

Why is software unreliable?

Analog: small changes in input cause small changes in output.

Digital: many states, software: not a repetitive structure. Cannot describe using continuous functions.

Ways to improve software?

Structured programming.

Formal verification.

Other problem?

Education of programmers.

Characteristics of a battle management system

- Ballistic characteristics unknown. Decoy detection. Need to make assumptions

-Sensors, behaviour not predictable. “fail soft” software not good enough

-Impossible to test before use. Need testing

-Service period so short, can’t debug during service. Need to modify during use.

-Real time deadlines. Cannot predict worst case. Must meet deadlines

-Very large

Conventional method of programming

“Think like a computer”.

Concurrency – not predictable (multithreaded).


Recommendations for SWE:

-nail down requirements before design.

-divide into modules, info hiding, abstraction.

-formally specify modules.

-precise documentation

-cooperating sequential processes.

-structured programming


New problem --> overlook difficult decisions.

New programming languages?

Won’t help

New environments?

Won’t help much.

2 definitions of AI:

1. Computers solve problems that only humans could before.

2. Using heuristic or rule based programming

AI applied to SDI?

Heuristic: Trial and error.

Expert systems: brittle. Need to have experts.

Can’t trust heuristics.

Automatic programming:

= programming at a higher level language.

Program verification

Works on small programs only. Proofs may have errors.

Fund research

Technocrats, don’t have time.


Back to Geoff's home page