Assignments

Please make sure all submissions are anonymous.

We will use Gradescope for assignment submission and grading. We will post instructions on EdStem. Please make sure you follow those instructions!

All work will be due by 11:59pm US/Eastern of the indicated day.

Name

 

Group?

 

Late?

 

TA?

 

Published

 

Due

DocDiff

 

no

 

no

 

yes

 

Wed, Sep 6

 

Fri, Sep 8

Nile

 

no

 

yes

 

yes

 

Sat, Sep 9

 

Tue, Sep 12

Sortacle

 

no

 

no

 

yes

 

Wed, Sep 13

 

Sun, Sep 17

Tables

 

no

 

yes

 

no

 

Mon, Sep 18

 

Thu, Sep 21

Oracle

 

yes

 

no

 

yes

 

Fri, Sep 22

 

Tue, Sep 26

Filesystem

 

no

 

yes

 

no

 

Wed, Sep 27

 

Thu, Sep 28

Updater

 

yes

 

no

 

yes

 

Fri, Sep 29

 

Wed, Oct 4

Contfracs

 

no

 

yes

 

yes

 

Thu, Oct 5

 

Thu, Oct 12

Reactive

 

opt.

 

no

 

yes

 

Mon, Oct 16

 

Fri, Oct 20

JoinLists

 

no

 

yes

 

yes

 

Sat, Oct 21

 

Tue, Oct 24

TweeSearch

 

no

 

yes

 

no

 

Wed, Oct 25

 

Sun, Oct 29

MST

 

no

 

yes

 

yes

 

Mon, Oct 30

 

Sat, Nov 4

Conversions

 

no

 

yes

 

no

 

Sun, Nov 5

 

Sat, Nov 11

MapReduce

 

yes

 

no

 

yes

 

Sun, Nov 12

 

Thu, Nov 16

Fluid Images

 

no

 

yes

 

yes

 

Sun, Nov 19

 

Thu, Nov 30

24

 

no

 

no

 

no

 

Fri, Dec 1

 

Mon, Dec 4

All SRC tasks will be due two days after the corresponding assignment. The one exception is Contfracs, which will be due on Oct 16 (instead of Oct 14), to avoid being due during the mid-semester break.

The Group? column says whether you have to do that assignment solo or in a group. A group is two to three people. We will post instructions on group formation on EdStem. If it says that groups are optional, then you can form a group of one or two other people on your own, or work solo, whichever you prefer. You cannot repeat partners across group assignments. Please read and follow these rules and guidelines for all group assignments.

The Late? column says whether you are allowed to use late days for this assignment. Please see the Syllabus and Course Policies for information about late days.

The TA? column indicates whether you can get external (course staff or EdStem) help for this assignment. For most assignments you can. But for a handful (usually simpler) assignments, we want you to work through them on your own and make sure you can do the work in this class by yourself—think of it as exam mode. (If it’s a group assignment, then you can of course work together as a group.) EdStem posts will be limited to clarifications of errors on the assignment: you can’t ask for help, but you can check if you think, for instance, there’s a mistake.

The course homeworks will be programmed in Pyret,Please program according to the Pyret Style Guide. unless indicated otherwise. Pyret is a reasonably large language with many libraries, some of which reproduce functionality (like basic data structures) that we are asking you to create in this course. This can lead to some confusion about what you are and aren’t allowed to use from the language. Each assignment provides information about this when necessary, but in general, the following rules apply: