IntroCS-2 Course Projects
Spring, 2021 -- Mr. Brooks

The primary purposes of the project are:

  • to build something of value: artistic, practical or intellectual
  • to demonstrate the use of the programming and design techniques learned in this course
  • to demonstrate the mastery of programming techniques learned outside the course in order to build the project

Both options below will require creating and publishing (to moe) a webpage/website describing your project.

Option 1:  Create a visual work using the Python turtles library. 

This is an individual project.

This may be the building of a visual scene or an animation.  The intent here is artistic creativity, using primarily the resources of the turtles library and Python programming techniques.

It may also be an interactive work, in which case an adequate set of instructions needs to be provided for the user.

You will need to learn to use the turtle library well, including learning to use any techniques necessary for your project that we have not covered in class.

Scene creation: the creation sequence for the still image should take between 15 and 60 seconds.
or
Animation: the animation should take between 30 seconds and no more than 3 minutes

You should submit to the homework server:

  1. the Python program file that runs your project (uploaded).  If more than one file, create a .ZIP file from them and upload that.
  2. the address of the webpage discussing your project to the Comments-to-Teacher
  3. The webpage should include
    1. author info at top
    2. the difficulties you had to overcome.
    3. the techniques you needed to master, especially those we didn't cover in class.
    4. a measure of the time you spent on the project
    5. any help you received from people and outside resources.
    6.  any instructions on how to recreate your project beyond simply loading it into Thonny and pressing Run.
    7. ...and any other comments about the project you wish to share.

Option 2: Data analysis and reporting.

This project can be done solo or duo. If duo, both of you must be in the same class, the project needs to have been a substantial work by both, and additionally, an accounting of who did what must be created in another webpage whose url is also submitted to Comments.

In addition to looking at the World Happiness Report, y'all went out there and hunted, gathered and returned with a lot of free data about the world.  Choose one (or more) external datasets (they do not have to be from the that list of dataset y'all had created) and start asking questions of that dataset that you think, with suitable processing using Python, the dataset can answer.  Or graph the data in some way to  see if there's anything interesting going on that cries out for an explanation.  Create a report on a webpage/website, akin to what a journalist would write, including the questions, data and graphics (using Matplotlib) supporting your conclusions.

You should submit to the homework server:

  1. your code file, with embedded comments indicating the function of each function (uploaded)
  2. a) the address of the webpage-report
    b) if duo: the addresss of the webpage with your personal report on the experience of working duo and the division of labor.
  3. The main webpage should report:
    1. author info at the top
    2. why you're interested in this data
    3. where the data comes from, and how to access it
    4. what questions you've asked of the data, including ones you may not have been able to answer
    5. what you've concluded and how
    6. what data work you have learned how to do for this project
    7. any help you received from people and outside resources
    8. ...and any other comments about the project you wish to share.