15110 Fall 2011 [Cortina/von Ronne]

Written Homework 1 - due Friday, September 9 in class

Reading Assignment

Read sections 1.1-1.2 of chapter 1 of the textbook Explorations in Computing and read chapter 1 of the book Blown To Bits.

Instructions

Exercises

  1. (1 pt) How do the Japanese and Russian versions of the abacus differ from the Chinese version?

  2. (1 pt) Babbage's Difference Engine utilized the method of finite differences to compute the values of a polynomial function. Babbage computes the values of the function and all of its difference functions for x=0, and these values are given below. What does the machine compute for f(1), f(2), f(3) and f(4) when the machine is cranked?

    f(0) = 5
    Δf(0) = 2
    Δ2f(0) = 3
    Δ3f(0) = 1

  3. (1 pt) Charles Babbage wants to compute all of the function values for the polynomial f(x) = 3x2 + 7x + 5 for x = 1 to 1000. Using the method of finite differences, what initial values does he set his machine to if he wants it to start at x = 0? (HINT: You'll need to compute the difference (delta) functions first.)

  4. (2 pts) What was the purpose of each of the following computational machines? Why was each machine desperately needed?

    1. Herman Hollerith's tabulating machine

    2. ENIAC

  5. (2 pts) Consider the punch card used for Herman Hollerith's tabulating machine:

    Ask your professor for a description of the 1890 card
    http://www.columbia.edu/cu/computinghistory/census-tabulator.html

    1. What do you think is being encoded in the top middle section with codes Dv, Wd, Sg, etc.? Try to decode as many of these abbrieviations as you can.

    2. What do you think is being encoded in the two sections in the lower right (with codes Us, Ir, Sc, etc.)? Try to decode as many of these abbreviations as you can.

    3. Explain how age is encoded on this card.

    4. [HARDER] What is being encoded by the section with codes CM, UM, etc.? HINT: Remember that this is the 1890 census. Something significant happened prior to this census.

  6. (1 pt)

    1. An electronic device has 128GB of memory. It is connected to a communication port that receives data at a rate of 256Mbps. How long will it take to fill up the memory of this device if it starts off as empty?

    2. Moore's Law states that the processing power of a computer doubles approximately every 2 years. Based on this observation, how many years will it take to have a computer that is approximately a thousand times more powerful than today's computer?

  7. (2 pts) Based on your reading of Chapter 1 of Blown To Bits, answer the following questions.

    1. A common theme in computing is dealing with advances in technology that change exponentially. Exponential changes are often hard to see at first but become very obvious once it's too late to adapt. Give an example from this chapter of a company that didn't see exponential changes in its core business, resulting in massive layoffs and a major loss in revenue.

    2. Eliot Spitzer, former governor of New York, was forced to resign due to a prostitution scandal. How was his involvement detected digitally?

    3. Years ago, people copied songs on to cassette tapes and shared them with their friends, yet the recording industry didn't pursue these people for copyright infringement. Today, however, sending a friend a copyrighted mp3 file can get you into trouble. Why is the response different now?

    4. Once digital data about you is stored, can it be completely erased? Why or why not?