October 5, 2011 Abstraction, Privacy, and the Internet
Agenda Team Project #1 due Monday One per team Presenting to the class Abstraction Jeff Kramer’s “Is Abstraction the Key to Computing?” Internet Blown to Bits Chapters 2 & 3
Kramer’s Question “Why is it that some software engineers are computer scientists are able to produce clear, elegant designs and programs, while others cannot?”
Cognitive Development Jean Piaget ( ) - four stages of development Sensorimotor Pre-operational (infancy – 7) Concrete operational (7-12) Formal operational (12 to adulthood) 30%-35% of adolescents conquer fourth stage
What is Abstraction? “The act of withdrawing or removing something” “The act or process of leaving out of consideration one or more properties of a complex object so as to attend to others” Is abstraction only found in Computer Science?
Abstraction in Art “It is easy to make something simple sound complex, however it is more difficult to make something complex sound simple.”
Abstraction in Life
Abstraction in BYOB - Procedural
Abstraction in CS “Once you realize that computing is all about constructing, manipulating, and reasoning about abstractions, it becomes clear that an important prerequisite for writing (good) computer programs is the ability to handle abstractions in a precise manner.” - Keith Devlin
Abstraction and the Internet – IP Addresses Four octets Each block is an 8 digit binary number Dynamically assigned (DHCP – Dynamic Host Configuration Protocol) Laptop Static IP address Web server
Abstraction and the Internet – IP Addresses
Abstraction and the Internet – Domain Name Server Domains have a hierarchy EDU – top-level domain Accredited post-secondary educational US institutions UA – University of Alabama CS – Computer Science department
Information sent in Packets Packet consists of two types of data Control information: source, destination, error detection, sequence User data Some systems send packets persistently to avoid collisions Delivery not guaranteed How is it sent?
Protocols Networks speak the way people do Speaking has certain rules Speak the same language (English, Spanish, …) One person speaks at a time Interruptions are disruptive Speak with the proper volume Don’t speak for too long Pete Siemsen -
Protocols By using a protocol, we know The syntax of a message Fields/format The semantics of a message Meaning; may illustrate error What actions required after receiving the message If error received, the file may need to be resent
TCP/IP Created by DARPA in 1970s Transmission Control Protocol and Internet Protocol Also known as Internet Suite Protocol IP moves packets of data from source to destination based on a four byte destination address TCP verifies the correct delivery of data
Wget Allows the user to download a file without using a browser
Privacy
Bits Behind the Scenes