Prep Work: Instead of using a textbook for this course, we are
going to rely on you finding information on the Internet to develop our
course materials. Prep work describes the topic we want to discuss
that day in class; in order to enable you to have some information
about the topic, you will need to find (and read) some information on the Internet
and print the page out and bring it to class.
- Printing is free in the Weber lab and possibly in the computer lab
specific for your major (open-option students have a lab in the Lory student
center), not to mention the computer labs in the computer science department.
- Only 1 to 2 pages are required.
- You need not answer all the questions posed, but find an answer to at least one of them.
- You must write your name at the top as you will hand it in at the end of class (returned next time).
- Submissions may be copied and distributed to the entire class to enhance
our course materials.
- You must compile all prep work and handouts in to a folder/notebook, to
be checked at the end of the course.
Assignments Due: Assignments involve essays (perfect spelling and grammar!), programming projects and other work that you are required to do yourself.
Essays: Essays are the 50-point papers that are worth much more than your assignments.
| Day | Date | Lecture Topics | ||||||
|---|---|---|---|---|---|---|---|---|
| 1 | Aug 21 | Prep Work: Think about what you want to get from this course. (no need to hand in anything)
Assignments Due: none Discussion: Who are you? Discuss why to take this course, what you want from it,
and whether it is a good match for you.
Assignment 1: due Mon Aug 28 start of class (typed, with perfect spelling and grammar!): What are your objectives for this course? What do you hope to get or learn from taking it? What is computer science? How is it related to Art? to Science? How is it helpful to Art? to Science? to your major? | ||||||
| 2 | Aug 23 | Prep Work: What is Problem Solving? What is a problem? How do we go about solving problems?
Assignments Due: none Discussion: Problem Solving Review assignment. Problem solving. Computer drawing exercise. Programming intro (breaking tasks into simple steps). Handout If you ask for something, you are more likely to get it. If you don't ask, you are less likely to get it.
Assignment 2: due Aug 30 start of class: Bring an "ID card" to class -- 4x6 card (available from instructor) with the following on one side of the card:
| ||||||
| Aug 24,25 | Recitation
Log in, change password, email, Firefox browser, Linux On the Internet, find out what areas of computer science the CSU CS department specialize in. Search for other topics in CS that we could cover in this course. | |||||||
| 3 | Aug 28 | Prep Work:
What is an algorithm and how does it differ from a computer program?
What is an example of an algorithm?
What makes one algorithm more efficient than another algorithm?
Why would we desire a more efficient algorithm than any algorithm that works?
How does an algorithm relate to problem solving?
Assignments Due: Assignment 1 Discussion: Algorithms Definition, examples, efficiency and relation to problem solving | ||||||
| 4 | Aug 30 | Prep Work: Answer one of these questions: What is a computer - what is it made up of?
Who originally created the computer and what was the design?
How has the pc progressed over the years (find some photos of old computers)?
What other influential people helped in the development of the computer?
How does the original design for a computer differ from the modern computer of today?
Assignments Due: Assignment 2 (ID Card) Discussion: Computer What is a computer/pc/Internet, famous bad quotes, history of the computer
Assignment 3: due Sep 6 start of class: 50 point paper (perfect spelling and grammar): I want you to think about the purpose of the computer and how it relates to problem solving. You are to write a proposal as a person in the early part of this century to convince the world of the importance of the computer. You will need to describe how a computer is to work (in a general sense) such that the people of that era can understand. You may support your argument with quotes from any of the following people (be sure to attribute the quote correctly!): Euclid and Archimedes, Blaise Pascal, Joseph Jacquard, Charles Babbage, Herman Hollerith, Vannever Bush, John Atanasoff and Clifford Berry, Konrad Zuse and Helmut Schreyer, Howard Aiken, Alan Turing, John Mauchley and J. Presper Eckert, John von Neumann What political/social/economic effects will the computer have on society? How could the computer potentially change the world? What would the world be like with/without computers in the future (e.g. 2006)? | ||||||
| Aug 31,Sep 1 | Recitation
What is a computer? What are the best options when buying a computer? What's inside a computer? Parts Inners another | |||||||
| - | Sep 4 | Labor Day: No classes | ||||||
| 5 | Sep 6 | Prep Work: Answer one of these questions:
What is the difference between an analog signal and a digital signal?
Why do computers use digital representation?
Which is better for cell phones - analog or digital?
What is binary numbering system (how do you count to ten in binary)?
What is hex numbering system (how do you count to twenty in hex)?
Machine code language
Assignments Due: Assignment 3 Discussion: How computers work - analog vs. digital, decimal vs binary vs hex | ||||||
| Sep 7,8 | Recitation
Linux and Linux/UNIX commands Linux Commands | |||||||
| 6 | Sep 11 | Prep Work: How do computers generate random numbers - are they truly random?
What is a pseudo-random number and how can it be calculated?
How do industries like video games, bingo, lottery and casinos generate random numbers
to prevent people from figuring out the system?
Find a true story of people "beating the system" by figuring out the random
sequence (it has happened!)?
Assignments Due: Discussion: Review of 50-point papers returned, How to get truly random numbers | ||||||
| 7 | Sep 13 | Prep Work: Types of computer languages:
What's the difference between machine language and assembly language? What's the difference between assembly language and high-level language? What's the difference between procedural languages and object-oriented languages? What's the difference between procedural languages and functional languages? What are examples of programming languages of each of the above types? What is a database, and what language is usually used? Assignments Due: Discussion: computer languages
Assignment 4: due Sep 20 start of class: 50 point paper (perfect spelling and grammar): Double-spaced, 11-pt font, 1-inch margins, 4 pages long Explain how a large email message with photo attached gets sent from you in Fort Collins to your friend in Nepal. You must start off your paper with an analogy to something that kids would understand. Explain your analogy of how email messages get transferred in 1 full page of your essay. Then transition to the rest of the paper to explain in detail how it works. You may only quote or direct paraphrase from other sources three times total in your paper. The rest will need to be put in your own words. Since plagiarism is a serious offense, you will be given a zero on the assignment if you (a) directly quote from a source and do not properly cite your source (b) paraphrase from a source and do not properly cite your source (c) copy from a source and do not properly cite your source. Your three citation quotes may only be up to 2 sentences long each. You should not quote any more than that. You should learn to write it yourself. Sources should be cited by using a superscript number after the quote, references a set of end notes at the end of the paper. The endnotes should contain the following: [#] Author. "Title of the article or book", Publisher, year. Example: [2] J. Lewis and L. Loftus. "Java Software Solutions", McGraw Hill, 2006. For websites: [#] Author. Title of web page, month and year you viewed the web page, URL. Example [3] R. Ralph. "HTML Reference Guide", Sept 2006, http://www.netstrider.com/tutorials/HTMLRef/index.html. | ||||||
| Sep 14, 15 | Recitation
Machine language, assembly language http://diwww.epfl.ch/mantra/aeonline/course/6/1/index.html | |||||||
| 8 | Sep 18 | Prep Work: Print out the source code of your favorite web page.
To do so, you can select in your browser: "View -> Page Source" or something similar.
Assignments Due: none Discussion: HTML
Assignment 5: due Sep 29 by 2:30pm: Complete the following requirements for your personal homepage (as started during recit Sept 21, 22)
NOTE: You must write Assignment 5 using HTML NOT using a helper application.
| ||||||
| 9 | Sep 20 | Prep Work: none
Assignments Due: Assignment 4 (50 point paper) Discussion: HTML | ||||||
| Sep 21,22 | Recitation
Web Pages Work on your web page to make it more fun and interesting! Play with your web page. Add at least two elements from examples in: Making Your Web Page More Fun or By the end of class have a working web page with some personality. Include at least: your full name, color, at least one image, at least one kind of special formatting, and at least one link. | |||||||
| 10 | Sep 25 | Prep Work: Find a web page that contains Javascript in the head tag
and print it out, bring to class
Assignments Due: none Discussion: JavaScript
| ||||||
| 11 | Sep 27 | Prep Work: Bring in an idea of something you want to learn
about how to do on a web page. Flash program is not acceptable, nor
are any of the things listed in the JavaScript Stuff lecture notes from Monday.
Assignments Due: Due friday: Assignment 5 Discussion: JavaScript
Assignment 6: due Oct 4 by 2:30pm: Complete the following requirements for your personal homepage (add to what you already have)
| ||||||
| Sep 28,29 | Recitation
ssh and sftp JavaScript: mouse over on images, incorporating scripts others wrote e.g. hotscripts.com, javascript.internet.com | |||||||
| 12 | Oct 2 | Prep Work: none
Assignments Due: Discussion: ALICE (www.alice.org) | ||||||
| 13 | Oct 3 | Prep Work: Questions about the exam
Assignments Due: Discussion: Mid-Term Review, how to submit in WebCT (for HW 7), HW7
Assignment 7: due Oct 13 by 2:30pm: ALICE project: You may use any world you like, and create a movie that interacts with the user. You may not use the ice skater from recits/tutorial. Minimal Requirements:
| ||||||
| Oct 5,6 | Recitation
ALICE Go through first tutorial Add an object to the world Use a "Do..Together" block | |||||||
| 14 | Oct 9 | MID-TERM in class
> > > > > > > > > > Study Guide < <<<<<< | ||||||
| 15 | Oct 11 | Prep Work:
Assignments Due: ALICE Assignment #7 is due FRIDAY by 2:30pm, late period until Monday. Submit via WebCT. Discussion: Robot API | ||||||
| Oct 12,13 | Recitation
Robots Meet in North lab in the back, where the robot play area is | |||||||
| 16 | Oct 16 | Prep Work: See assignment 8 below
Assignments Due:
Discussion: Discuss robots, review exam, don't forget to work on your web pages, it will be worth 50 points later this semester that you have a good well-developed set of web pages! | ||||||
| 17 | Oct 18 | Prep Work: Find 3 search engines
excluding Google, Yahoo, Microsoft, AltaVista, HotBot, Dogpile
and write at least 400 words comparing and contrasting the ones you found.
For example, what is unique about it?
Assignments Due: none Discussion: Search engines | ||||||
| Oct 19,20 | Recitation
Search engines Meet in regular recit lab room Google yourself. What happened? | |||||||
| 18 | Oct 23 | Prep Work: What is the difference between depth-first search and breadth-first search?
What is an example of each from the CS dept web page: http://www.cs.colostate.edu?
How do these search techniques relate to game programming?
Assignments Due: none Discussion: Search techniques
| ||||||
| 19 | Oct 25 | Prep Work: What is "artifical intelligence"?
What is the Turing Test? Does Eliza or Parry pass the Turing Test?
What would be a good test for determining a machine to be artifically intelligent?
Assignments Due: none Discussion:
Assignment 9 Web sites (50 points): due Nov 14 11am Check out some of the Webby awards for some ideas. Add the following to your website on your CS accounts:
Extra Credit #1 Top 3 web sites will receive extra credit and candy. Extra Credit #2 Create/install a working bulletin board on your website, such that internet users can fill in a simple form and their entries as well as everyone elses is available on the web page. | ||||||
| Oct 26,27 | Recitation
Play Eliza Eliza 20Q 20Q How do these work to pick an appropriate answer? Work on Web sites | |||||||
| 20 | Oct 30 | Prep Work: none
Assignments Due: none Discussion:
Problems with Vision in AI
Why did the programmer confuse Christmas and Halloween?
Assignment 10 AI (50 points): due Nov 8 at 11am 50 point paper (perfect spelling and grammar): Double-spaced, 11-pt font, 1-inch margins, 4 full pages long (including references) Must reference 3 references - no more, no less. You may only quote or direct paraphrase from other sources three times total in your paper. The rest will need to be put in your own words. Since plagiarism is a serious offense, you will be given a zero on the assignment if you (a) directly quote from a source and do not properly cite your source (b) paraphrase from a source and do not properly cite your source (c) copy from a source and do not properly cite your source. Your three citation quotes may only be up to 2 sentences long each. You should not quote any more than that. You should learn to write the concepts in your own words. Topic: What is a good test for determining whether a machine is intelligent or not? Discuss the problems with the Turing Test as an indicator of an intelligent machine. What other tests are proposed? What test do you think would work the best? Would the Eliza program, 20Q program or the Philip K. Dick android pass the test that you propose is the best for identifying an intelligent machine? Does your test fulfill the 5 things we identified in lecture 10/25 as to what is 'artificial intelligence'? Does it need to fulfill all 5? | ||||||
| 21 | Nov 1 | Prep Work:
Assignments Due: Discussion: | ||||||
| Nov 2,3 | Recitation
compile and run the cpp program, change Hello World to something else CGI program, cgi link | |||||||
| 22 | Nov 6 | Prep Work: How does the operating system interact with the hardware in the computer?
Assignments Due: Discussion:
| ||||||
| 23 | Nov 8 | Prep Work: Bring in a list of 10 different Operating Systems
Assignments Due: AI (Assignment #10) (50-pt paper) Discussion: Finish OS. Why are there so many different types of OS?
What are the differences between them?
| ||||||
| Nov 2,3 | Recitation
Gates and circuits Lab Create a gate with an and, or, not and XOR. Draw out the diagram on paper that you created. Write out the boolean algebra of the equation. Fill in a truth table for it. | |||||||
| 24 | Nov 13 | Prep Work: Describe the types of security problems related to computers
at the hardware, software and data levels. Why is open-source a potential for
security problems, and why is open-source ideal for preventing security problems?
What types of threats are there? How do you defend security attacks/threats?
Reading: Virus, Worms and Trojan Horses
Assignments Due: Due Nov 14: websites (50 pts) Discussion: Security
Assignment 11 OS (10 points): due Nov 17 at 11am Submit your answers to the lecture questions posed from 11/6 (you can submit the handout if you like, does not need to be typed) Either bring to lecture on Wed, or my office hours on Friday, or put under my door, or drop off at the main office if open, OR email to grader: osheim@cs.colostate.edu | ||||||
| 25 | Nov 15 | Prep Work: What types of encryption algorithms are there?
Describe how various encryption algorithms work. Where/when is encryption necessary?
Assignments Due: due Friday, 11/17 at 11am HW 11 Discussion: Encryption
| ||||||
| Nov 16,17 | Recitation
Security/Encryption very good PGP tutorial | |||||||
| FALL BREAK - HAPPY TURKEY DAY | ||||||||
| 26 | Nov 27 | Prep Work: What is the "Dining Philosophers Problem" and how does it relate
to computer science? What is deadlock? What is starvation?
What is a race condition?
Assignments Due: none Discussion: Dining Philosophers:
| ||||||
| 27 | Nov 29 | LECTURE CANCELLED
Too much snow/ice! Stay home, stay SAFE. Liz's Office hours cancelled for today | ||||||
| Nov 30, Dec 1 | Recitation What is the N x N Queens problem? How many solutions are there to 8 x 8 Queens problem? What are these solutions? What is the algorithm to try to solve the problem? slides | |||||||
| 28 | Dec 4 | Prep Work: Attend the seminar
"The Spatial Web: Visions For A Geographically Enabled World"
Monday, December 4, 2006 Lecture: 11:00 a.m. to 12:00 noon Shepardson room 118 Find me to sign an attendance sheet Slides Assignments Due: none Discussion:
Assignment 12 Seminar Essay (10 points): due Dec 8 at 11am Questions for you to answer (answer all):
| ||||||
| 29 | Dec 6 | Prep Work: none
Assignments Due: Assignment 12 due Friday 11am Discussion: Review for final exam
Assignment 13 Lecture Material Notebook (10 points): due Dec 13 at 8am Hand in your notebook of all your prep works and lecture handouts |
Dec 7,8 |
Recitation
| It is your responsibility to ensure all grades are correct. All of the following grades are available to you via WebCT. If for any reason you cannot see a particular grade, you must contact the instructor/GTA by Dec 8 (your recit). THis is your last chance to argue any of the following grades
Spend part of recit ensuring your grades are all listed correctly! The following grades will not be available to you until finals week: HW 12, 13, Labs attendance and completion 11-15, Prep 11-15, Participation 11-15, final exam |
Dec 13 8am |
FINAL EXAM in 110 UNVSC building (where lectures are)
| Final is cumulative, with emphasis on the material not covered on the mid-term Mid-term Study Guide > > > > > > > > > > FINAL Study Guide < <<<< You must bring in your notebook (Assignment 13) "compile all prep work and handouts in to a folder/notebook, to be checked at the end of the course." |