Difference between revisions of "CSC111 Class Page 2011"
(→Weekly Schedule) |
|||
(62 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | <center>[[CSC111_2011 | Main Page]] | [[CS111_Syllabus_2011 | Syllabus ]] | [[CSC111_Class_Page_2011 | Weekly Schedule ]] | [[CSC111_Class_Page_2011#Links_and_Resources | Links & Resources ]]</center> | + | <center>[[CSC111_2011 | Main Page]] | [[CS111_Syllabus_2011 | Syllabus ]] | [[CSC111_Class_Page_2011 | Weekly Schedule ]] | [[CSC111_Class_Page_2011#Links_and_Resources | Links & Resources ]] | [http://piazza.com/smith/spring2014/csc111/home Piazza]</center> |
<br /> | <br /> | ||
---- | ---- | ||
Line 19: | Line 19: | ||
<br /><br /> | <br /><br /> | ||
To see when and where TAs are available this week, click [http://cs.smith.edu/classwiki/index.php/Computer_Science_TA_hours here]. | To see when and where TAs are available this week, click [http://cs.smith.edu/classwiki/index.php/Computer_Science_TA_hours here]. | ||
+ | |||
+ | <onlydft> | ||
+ | Ideas for next time: http://www.pippinbarr.com/games/theartistispresent/TheArtistIsPresent.html | ||
+ | </onlydft> | ||
=Weekly Schedule= | =Weekly Schedule= | ||
+ | |||
{| style="width:100%" border="1" | {| style="width:100%" border="1" | ||
Line 26: | Line 31: | ||
|'''Week''' || '''Topics''' || '''Reading''' | |'''Week''' || '''Topics''' || '''Reading''' | ||
− | + | ||
|-valign="top" | |-valign="top" | ||
|width="15%"| Week 1 <br /> 9/8 | |width="15%"| Week 1 <br /> 9/8 | ||
Line 46: | Line 51: | ||
** Test yourself with the Programming Exercises at the end of the chapter. | ** Test yourself with the Programming Exercises at the end of the chapter. | ||
* Read the [http://maven.smith.edu/~jfrankli/111s08/pairProgramming2000.pdf article] on pair programming. We will discuss it in class on Th 9/15. | * Read the [http://maven.smith.edu/~jfrankli/111s08/pairProgramming2000.pdf article] on pair programming. We will discuss it in class on Th 9/15. | ||
− | + | ||
|- style="background:#eeeeff" valign="top" | |- style="background:#eeeeff" valign="top" | ||
| Week 2 <br /> 9/13<br /> | | Week 2 <br /> 9/13<br /> | ||
Line 53: | Line 58: | ||
** 5 minutes with Guido von Rossum | ** 5 minutes with Guido von Rossum | ||
<br /> | <br /> | ||
+ | |||
+ | |||
{{#widget:Google Video | {{#widget:Google Video | ||
|docid=-7758421725489622662 | |docid=-7758421725489622662 | ||
Line 58: | Line 65: | ||
|height=326 | |height=326 | ||
}} | }} | ||
+ | |||
<br /> | <br /> | ||
+ | |||
** A word about semantics: a look back at the challenge solutions for [[CSC111_Lab_1_2011 | Lab #1 ]] | ** A word about semantics: a look back at the challenge solutions for [[CSC111_Lab_1_2011 | Lab #1 ]] | ||
Line 90: | Line 99: | ||
** We're starting on Tuesday with material from Chapter 2. In particular understanding variables and assignments, and the temperature conversion program. | ** We're starting on Tuesday with material from Chapter 2. In particular understanding variables and assignments, and the temperature conversion program. | ||
− | + | ||
|- style="background:#ffffff" valign="top" | |- style="background:#ffffff" valign="top" | ||
| Week 3 <br /> 9/20<br /> | | Week 3 <br /> 9/20<br /> | ||
Line 112: | Line 121: | ||
* Reading | * Reading | ||
* On Tuesday we'll cover some material from Sections 2.5 (assignment) and 2.6 (definite loops) in Zele. | * On Tuesday we'll cover some material from Sections 2.5 (assignment) and 2.6 (definite loops) in Zele. | ||
− | + | ||
|- style="background:#eeeeff" valign="top" | |- style="background:#eeeeff" valign="top" | ||
| Week 4 <br /> 9/27<br /> | | Week 4 <br /> 9/27<br /> | ||
Line 146: | Line 155: | ||
− | + | ||
|- style="background:#ffffff" valign="top" | |- style="background:#ffffff" valign="top" | ||
| Week 5 <br /> 10/4<br /> | | Week 5 <br /> 10/4<br /> | ||
Line 177: | Line 186: | ||
* Reading | * Reading | ||
** Chapter 4 on Graphics | ** Chapter 4 on Graphics | ||
− | + | ||
|- style="background:#eeeeff" valign="top" | |- style="background:#eeeeff" valign="top" | ||
| Week 6 <br /> 10/11<br /> | | Week 6 <br /> 10/11<br /> | ||
Line 206: | Line 215: | ||
|| | || | ||
* Reading | * Reading | ||
− | + | ||
|- style="background:#ffffff" valign="top" | |- style="background:#ffffff" valign="top" | ||
| Week 7 <br /> 10/18<br /> | | Week 7 <br /> 10/18<br /> | ||
Line 228: | Line 237: | ||
|} | |} | ||
− | + | =Second Half= | |
{| style="width:100%" border="1" | {| style="width:100%" border="1" | ||
Line 270: | Line 279: | ||
* Reading | * Reading | ||
− | + | ||
|- style="background:#eeeeff" valign="top" | |- style="background:#eeeeff" valign="top" | ||
| Week 9 <br /> 11/1<br /> | | Week 9 <br /> 11/1<br /> | ||
Line 291: | Line 300: | ||
** Functions returning values are covered in Section 6.5.1. | ** Functions returning values are covered in Section 6.5.1. | ||
** Read section 6.6 | ** Read section 6.6 | ||
− | + | ||
|- style="background:#ffffff" valign="top" | |- style="background:#ffffff" valign="top" | ||
| Week 10 <br /> 11/8<br /> | | Week 10 <br /> 11/8<br /> | ||
Line 322: | Line 331: | ||
** Text file processing: Section 5.9 | ** Text file processing: Section 5.9 | ||
** While loops: Chapter 8 | ** While loops: Chapter 8 | ||
− | + | ||
|- style="background:#eeeeff" valign="top" | |- style="background:#eeeeff" valign="top" | ||
| Week 11 <br /> 11/15<br /> | | Week 11 <br /> 11/15<br /> | ||
Line 335: | Line 344: | ||
*** '''Boolean''' variables | *** '''Boolean''' variables | ||
*** [[CSC111 While Loop Exercises| Exercises]] | *** [[CSC111 While Loop Exercises| Exercises]] | ||
− | |||
− | |||
* '''Thursday''' | * '''Thursday''' | ||
[[Image:BenFranklin.jpg|150px|right]] | [[Image:BenFranklin.jpg|150px|right]] | ||
+ | ** Breaking out of double loops: break and continue only work with inner loops [[CSC111 Breaking-out-of-Loop Exercises | Example]] ( and [[CSC111_Lab_11_Solution_Programs_2011|solution programs]]). | ||
** Review of good practices for this class | ** Review of good practices for this class | ||
**# Read the sections in the textbook that cover the material we see in class | **# Read the sections in the textbook that cover the material we see in class | ||
Line 347: | Line 355: | ||
** Exceptions: Difference between '''NameError''' and '''TypeError''': http://docs.python.org/library/exceptions.html | ** Exceptions: Difference between '''NameError''' and '''TypeError''': http://docs.python.org/library/exceptions.html | ||
** Top-Down Design: Putting N-Queens on an NxN chessboard. This is the first step of a more complex problem we'll revisit later and which deals with the [[CSC111 NQueens.py|N-Queens problem]]. | ** Top-Down Design: Putting N-Queens on an NxN chessboard. This is the first step of a more complex problem we'll revisit later and which deals with the [[CSC111 NQueens.py|N-Queens problem]]. | ||
+ | *** [[CSC111 Draw Chessboard: Rough Solution | Program ]] we created in class. | ||
*** 1 solution for an 8x8 chessboard: [3, 6, 2, 7, 1, 4, 0, 5] | *** 1 solution for an 8x8 chessboard: [3, 6, 2, 7, 1, 4, 0, 5] | ||
− | + | ** An introduction to Homework 9's two problems: | |
+ | *** Average presidency: a rehash of an almost-ready solution | ||
+ | *** Elevator to the Stars: revisiting old solutions with a bit of ingenuity (algorithm) | ||
---- | ---- | ||
− | * [[CSC111 Lab 11 2011 | Lab 11]], [[CSC111 Homework 9 2011 |Homework 9]] | + | * [[CSC111 Lab 11 2011 | Lab 11]], and [[CSC111 Lab 11 Solution Programs 2011| Solution Programs]] |
+ | * [[CSC111 Homework 9 2011 |Homework 9]] and [[CSC111 Homework 9 Solutions 2011| solution programs]] | ||
|| | || | ||
* Reading | * Reading | ||
+ | ** Top-Down design rules are covered in Section 9.3 | ||
+ | ** Common loop patterns are covered in Section 8.3 | ||
− | |||
|- style="background:#ffffff" valign="top" | |- style="background:#ffffff" valign="top" | ||
| Week 12<br /> 11/22<br /> | | Week 12<br /> 11/22<br /> | ||
|| | || | ||
+ | [[File:AlmostTheTruth.jpg|right|150px]] | ||
* '''Tuesday''' | * '''Tuesday''' | ||
+ | ** [[CSC111 And now, something completely different| And now, something completely different]] | ||
+ | ** [http://processing.org/ Processing], created by Casey Reas and Benjamin Fry, at MIT. | ||
+ | *** Overview, Examples | ||
+ | *** Programming: [[Simple Game of Pong| a game of pong]]... | ||
+ | |||
*<b><font color="magenta"> '''Thursday''': Thanksgiving Break</font></b> | *<b><font color="magenta"> '''Thursday''': Thanksgiving Break</font></b> | ||
---- | ---- | ||
− | * | + | * [[CSC Make-up Homework 8 2011 | Make-up Homework 8]] |
|| | || | ||
* Reading | * Reading | ||
− | + | ||
|- style="background:#eeeeff" valign="top" | |- style="background:#eeeeff" valign="top" | ||
| Week 13 <br /> 11/29<br /> | | Week 13 <br /> 11/29<br /> | ||
|| | || | ||
* '''Tuesday''' | * '''Tuesday''' | ||
− | * '''Thursday''' | + | [[File:TaxiCabCSC111.png|100px|right]] |
+ | ** <font color="red">Office Hours today: 2:30 p.m. - 5:00 p.m.</font> | ||
+ | ** OOP with Classes! | ||
+ | ** A review and an introduction: review objects, introduce classes. | ||
+ | ** OOP and graphics | ||
+ | ** Programming Example with Classes: [[CSC111 A class for a simple car | A class for a car]] | ||
+ | |||
+ | * [[Image:fish0.gif|right]] '''Thursday''' | ||
+ | ** Several examples with classes: | ||
+ | ***Cars and Trees... [[CSC111 Car and Trees program|Program written in class]] | ||
+ | *** Fish in a tank... (list of fish available [[Fish for an Aquarium|here]]) | ||
+ | ** [http://mcsp.wartburg.edu/zelle/python/graphics/graphics.pdf Zelle's graphics reference]] (something handy to have around...) | ||
+ | <center><videoflash>Ye3nuq07vq0</videoflash><br />(Advance to 2 min 10 sec)</center> | ||
+ | |||
---- | ---- | ||
− | * | + | * [[CSC111 Homework 10 2011| Homework 10]] |
+ | * [[CSC111 Lab 12 2011| Lab 12 ]] and [[CSC111 Lab 12 Solution Program Part 1| Solution program]] | ||
|| | || | ||
* Reading | * Reading | ||
+ | ** Classes are covered in Chapter 10 of the textbook. | ||
− | |||
|- style="background:#ffffff" valign="top" | |- style="background:#ffffff" valign="top" | ||
| Week 14<br /> 12/6<br /> | | Week 14<br /> 12/6<br /> | ||
|| | || | ||
* '''Tuesday''' | * '''Tuesday''' | ||
+ | ** <font color="red">Office Hours today: 2:30 p.m. - 5:00 p.m.</font> | ||
+ | ** Discussion: how to create simple animation based on the fish animation: Look at work by [http://en.wikipedia.org/wiki/Eadweard_Muybridge Eadweard Muybridge]. | ||
+ | <center><videoflash>oGRTEjTzgBc</videoflash></center><br /> | ||
+ | ** More interesting videos on YouTube if you search for Eadweard Muybridge (1830-1904), a pioneer of the capture of animal locomotion through photography... | ||
+ | ** [[CSC111 Animating A Stick Figure | Animating a stick figure]] | ||
+ | ** [http://blog.insicdesigns.com/2011/05/cinemagraph-jaw-dropping-sample-of-animated-photographs/ Animated Photographs...]<br /> | ||
+ | <center>[[Image:AnimatedDogPhoto.gif]]</center><br /> | ||
+ | ** Creating a python module | ||
+ | ** Using a python module | ||
* '''Thursday''' | * '''Thursday''' | ||
+ | ** [[CSC111 Exercises on Writing Classes| Exercises]] (only last exercise) [[CSC111 Class Exercise Sketch| (What we did in class)]] | ||
+ | ** [[CSC111 Blinking Light Example| Blinking Light]]: objects that have their own "behavior" and state | ||
+ | |||
---- | ---- | ||
− | * | + | * [[CSC111 Lab 13 2011| Lab 13 ]] |
+ | * [[CSC111 Homework 11 2011| Homework 11]] and [[CSC111 Homework 11 solution| solution program]] | ||
+ | * A sample of the scenes created for this week's assignment: | ||
+ | [[Image:blinking1.png|150px]][[Image:blinking2.png|150px]][[Image:blinking3.png|150px]] | ||
|| | || | ||
− | * Reading | + | * Reading |
+ | ** Inheritance is covered in Section 12.4 of the textbook. | ||
+ | ** Dictionaries are covered in Section 11.6, ''Non-Sequential Collections'' | ||
− | |||
|- style="background:#eeeeff" valign="top" | |- style="background:#eeeeff" valign="top" | ||
| Week 15 <br /> 12/13<br /> | | Week 15 <br /> 12/13<br /> | ||
|| | || | ||
* '''Tuesday''' | * '''Tuesday''' | ||
− | * '''Thursday''' | + | ** Advanced Topic 1: The concept of class ''Inheritance'': [[CSC111 Example of Inheritance: Rectangle with a label| Example]] |
+ | ** Advanced Topic 2: '''Dictionaries'''. A hands on introduction can be found [[CSC111_Lab_12_2010 | here]]. And here's an [[CSC111 Counting Frequencies of Occurrence| example for counting the frequency of occurrence of words or letters in a text]] | ||
+ | *** [[CSC111_Lab_12_2010#Known_Character_Frequencies_for_different_languages | Letter frequencies for various languages]] | ||
+ | *** Practicing with dictionaries: [[CSC111 How cold is it in England?| How cold is it in England?]] | ||
+ | *** [[CSC111 Cold England 2 | Program we did in class]] | ||
+ | |||
+ | * '''Thursday''': <font color="magenta">'''Final Take-Home Exam'''</font>, will be due '''12/22/11 at 4:00 p.m.''' | ||
---- | ---- | ||
− | * | + | * [[CSC111_Final_Exam_2011| Final Exam]] |
+ | * [[CSC111 Lab 14 2011| Lab 14 ]] | ||
|| | || | ||
* Reading | * Reading | ||
Line 437: | Line 493: | ||
==Software== | ==Software== | ||
+ | |||
* Installing and using the [http://www.smith.edu/its/tara/file_transfer/ssh_sftp.html#installing Secure Shell Client] on a Windows PC[http://cs.smith.edu/~thiebaut/classes/111/SecureShell/ .] | * Installing and using the [http://www.smith.edu/its/tara/file_transfer/ssh_sftp.html#installing Secure Shell Client] on a Windows PC[http://cs.smith.edu/~thiebaut/classes/111/SecureShell/ .] | ||
Line 442: | Line 499: | ||
==Math== | ==Math== | ||
+ | |||
* [[Media:powersOfTwo.pdf | Powers of 2]] | * [[Media:powersOfTwo.pdf | Powers of 2]] | ||
<br> | <br> |
Latest revision as of 15:47, 19 January 2015
Contents
Prof and TAs
Dominique Thiébaut email |
|
To see when and where TAs are available this week, click here.
Weekly Schedule
Week | Topics | Reading
| |||
Week 1 9/8 |
|
| |||
Week 2 9/13 |
|
docid=-7758421725489622662 | width=400 | height=326
}}
|
|
Week 3 9/20 |
|
| |||
Week 4 9/27 |
(Advance video to 7-minute point and watch...)
|
| |||
Week 5 10/4 |
|
| |||
Week 6 10/11 |
|
| |||
Week 7 10/18 |
|
|
Second Half
Week | Topics | Reading |
Week 8 10/25 |
|
|
Week 9 11/1 |
|
|
Week 10 11/8 |
|
|
Week 11 11/15 |
|
|
Week 12 11/22 |
|
|
Week 13 11/29 |
(Advance to 2 min 10 sec) |
|
Week 14 12/6 |
|
|
Week 15 12/13 |
|
|
Links and Resources
Graphics Library
- Download the graphics library
- Documentation for Zelle's graphics library.
On Line Python books
- disocovermagazine.com blog. Check out the answers posted by many readers. They contain some interesting links that you may find useful!
Python keywords
- The list of all the reserved words of the Python language
- and del for is raise assert elif from lambda return break else global not try class except if or while continue exec import pass yield def finally in print
Linux
- Getting Started with Linux (from U. North Carolina, Chapel Hill)
- Intermediate Linux (from U. North Carolina, Chapel Hill)
- A good Emacs tutorial
- Emacs Quick Reference
Misc
- If you decide to work in pairs for the homework assignments, you need to follow the protocol for 'pair programming' as discussed in this article.
- Video talks on Python:
- All the programs of Zelle's Python textbook
- a video of digital horses: what we can do with lists of objects!
Software
- Installing and using the Secure Shell Client on a Windows PC.
- Using SSH on Windows, Linux, or on a Mac with OS X
Math
Back To Main Page