6.031 — Software Construction
Spring 2018

Announcements Archive

Tue May 22: Project grades and final grades

Project grades and feedback from your TA are now available on Omnivore, and final letter grades should be available soon on WebSIS.

Have a great summer!

Tue May 15: Project reflection and last class

The group project is due tomorrow at 11am. Also due at 11am is your individual reflection about the project, so please don’t forget to fill that out.

Tomorrow is the last 6.031 class of the semester. We will have a brief wrap-up and summary of the course.

Mon May 7: Problem Set 4 grades

Overall ps4 grades and grade reports are now available on Omnivore.

To see your beta autograde report, go to Didit, follow the link to your psets/ps4 page, and click “beta” in the “Milestones” section.

Your manual grade was assigned by staff inspection of your specs, tests, implementations, thread safety docs, and your response to code reviews.

If you have questions, please see the FAQ about grading questions.

Fri May 4: Project erratum: > should be \-

Because of a transcription error, the spec handout mentioned a lyric operator > that doesn’t actually exist in abc notation. It should be \- (backslash-hyphen). It appeared correctly in the BNF grammar.

The handout has been corrected, and the BNF grammar has been made a little more explicit that the backslash is a literal backslash character, not a string escape character as in \r and \n.

Thu May 3: Problem Set 4 reflection

Now that you’ve completed the last problem set 🎉, please fill out the required Problem Set 4 reflection, which asks a few questions about how you worked on ps4. It should take only a minute to fill out, and is due by tomorrow, May 4, at 10pm.

Wed May 2: Quiz 2 grades

Quiz 2 grades are now available on Omnivore.

You can review your graded quiz on Gradescope. You will receive an email from Gradescope with details.

Quiz 2 solutions are posted on the web site.

As with all assignments, please bring grading issues or questions to instructor office hours. Gradescope has a “regrade request” feature, but we will not be using it.

Sun Apr 29: Project groups and handout

Your project team and mentor for the group project are posted on Omnivore. The project handout has also been posted.

In Monday’s class, after we take a nanoquiz and practice team version control with Git, you will meet with your team, create your group repo, check in with your TA mentor, write a team contract, and start working on the project. The team contract is due tomorrow night, and the first project milestone (some warmup code that helps understand the problem) is due on Friday.

You must check in with your TA mentor tomorrow and in every class during the project. After tomorrow, there will be no more nanoquizzes, and all of class time until the last day of classes will be devoted to working on the project.

Mon Nov 27: Problem Set 4 alpha reports

Alpha grade reports and code reviews for ps4 are now available.

  • To see your alpha autograde report, go to Didit, follow the link to your psets/ps4 page, and click “alpha” in the “Milestones” section.
  • To see your code reviews, go to Caesar and click on “ps4-alpha” under “submitted assignments.”

In autograding this iteration, only your text server was tested for credit.

In manual grading, staff looked at your Board abstraction function and rep exposure safety argument. As you revise, try to both address their comments directly and generalize the feedback to improve your other ADTs.

The ps4 beta deadline is Monday at 10pm. Make sure you address all your code review comments from humans or marked #important by Checkstyle. If you need a slack day, remember to request it on Caesar.

Please ask questions on Piazza and visit lab or office hours.

Wed Apr 25: PS4 code review due Fri 11am; project signup due Thu 10pm

Problem Set 4 code reviewing is now open. Go to Caesar to find your reviewing assignments. You’ll have 6 files to review. Code reviews are due on Friday morning.

Also, please remember to fill out the project signup form by this Thursday at 10pm. Every member of a team must submit the form. If you do not fill out the form, you will not be part of a group.

Mon Apr 23: Project team signup

Starting next Monday, you will be working on the 6.031 final project in teams of three people. Please fill out the project signup form by this Thurs Apr 26 at 10pm.

You can fill out the form right now, even if you don’t have a team of three: just choose the appropriate option on the form. You can resubmit another response if your plans change by Thursday night, and we will use your last submitted response. To find additional team members, use the Piazza teammates post.

Every member of a team must submit the form. If you do not fill out the form, you will not be part of a group. We will assume you have dropped the course.

As always, if you have any questions, ask on Piazza!

Wed Apr 18: Problem Set 3 grades

Overall ps3 grades and grade reports are now available on Omnivore.

To see your beta autograde report, go to Didit, follow the link to your psets/ps3 page, and click “beta” in the “Milestones” section.

Your manual grade was assigned by staff inspection of your specs, ADT documentation, tests, implementation, and your response to code reviews.

If you have questions, please see the FAQ about grading questions.

Tue Apr 17: Quiz 2 next Fri Apr 27

Quiz 2 will be on Friday, April 27, 11:05am-11:55am, in Walker 3rd floor gym. That’s the usual class time, but not the usual class location.

The quiz is 50 minutes long, so class will end early that day.

The quiz will cover readings 1-27, from the start of the semester to next Monday’s second class on little languages. Any and all concepts from readings 1-27 may appear on the quiz, though you can expect more focus on topics from the second half of the class that weren’t covered by Quiz 1. Quizzes from previous semesters of 6.031 and 6.005 can be found in the quiz archive, although their content may differ from the topics we’ve discussed this semester (with greater divergence the farther back in time you go).

The quiz is on paper, so you will not need your laptop. It is closed-book, closed-notes, but you may bring a single 8.5×11″ double-sided page of notes, readable without a magnifying glass. The notes must be created by you, not anybody else, since the process of creating a crib sheet is most of the learning benefit of it.

A quiz review will be held during classtime on Wed April 25, and as always, you can visit office hours to ask quiz review questions, or post on Piazza.

Fri Apr 13: Problem Set 4

Problem Set 4 is now available. The ps4 alpha deadline is Monday, April 23, at 10pm. Slack days apply as usual.

After you wrap up ps3, please fill out the required Problem Set 3 reflection, which asks a few questions about how you worked on ps3. It should take only a minute to fill out, and is due by Tuesday at 10pm.

Mon Apr 9: Problem Set 3 alpha reports

Alpha grade reports and code reviews for ps3 are now available.

  • To see your alpha autograde report, go to Didit, follow the link to your psets/ps3 page, and click “alpha” in the “Milestones” section.
  • To see your code reviews, go to Caesar and click on “ps3-alpha” under “submitted assignments.”

In autograding, your Expression type and Commands methods were tested against staff tests.

In manual grading, staff looked at your Expression datatype definition, the specs of some Expression operations, and the implementation of one variant. As you revise, try to both address their comments directly and generalize the feedback to improve your other specs and implementations.

The ps3 beta deadline is Thursday at 10pm. Make sure you address all your code review comments from humans or marked #important by Checkstyle. If you need a slack day, remember to request it on Caesar.

Please ask questions on Piazza and visit lab or office hours.

Sat Apr 7: Problem Set 3 code review open, due Monday 11am

Problem Set 3 code reviewing is now open. Go to Caesar to find your reviewing assignments. You’ll have 6 files to review. Code reviews are due on Monday morning.

Thu Apr 5: Constellation update

We have some new features in development for the Constellation pair programming tool, and they require an updated version of its Eclipse plug-in.

Before you come to class tomorrow, please update Constellation:

  1. Quit and re-launch Eclipse
  2. In the Quick Access field at the top right of the window, enter “installation details” and pick Installation Details
  3. Select Constellation in the list and click Update…
  4. Accept the license, install unsigned content, and restart Eclipse to complete the update

Please post on Piazza or visit lab tonight if you have trouble updating. The new version will be required for tomorrow’s in-class exercises.

Mon Apr 2: PS3 deadline moved to Thursday; Quiz 1 grades released

First, because of the challenge of getting help on ps3 in the weekends before and after spring break, all ps3 deadlines have been delayed by one day: the alpha deadline is now Thursday April 5 (with up to 2 days of slack), the code review deadline is Monday April 9, and the beta deadline is Thursday April 12.

Quiz 1 grades are now available on Omnivore.

You can review your graded quiz on Gradescope. You will receive an email from Gradescope, and if you haven’t used it in another class, the email will explain how to log in.

Quiz 1 solutions are posted on the web site.

As with all assignments, please bring grading issues or questions to instructor office hours. Gradescope has a “regrade request” feature, but we will not be using it.

Mon Mar 26: 🏖 Problem Set 2 grades

Overall ps2 grades and grade reports are now available on Omnivore.

To see your beta autograde report, go to Didit, follow the link to your psets/ps2 page, and click “beta” in the “Milestones” section.

Your manual grade was assigned by staff inspection of your implementations, tests, and your response to code reviews.

If you have questions, please see the FAQ about grading questions.

Wed Mar 21: Problem Set 3

Problem Set 3 is now available. The ps3 alpha deadline is Thursday after spring break at 10pm. Slack days apply as usual.

After you wrap up ps2, please fill out the required Problem Set 2 reflection, which asks a few questions about how you worked on ps2. It should take only a minute to fill out, and is due by this Thursday at 10pm.

Fri Mar 16: Problem Set 2 alpha reports

Alpha grade reports and code reviews for ps2 are now available.

  • To see your alpha autograde report, go to Didit, follow the link to your psets/ps2 page, and click “alpha” in the “Milestones” section.
  • To see your code reviews, go to Caesar and click on “ps2-alpha” under “submitted assignments.”

In autograding, your implementations were tested against staff tests, and your IntervalSet tests were tested using correct and incorrect staff implementations.

In manual grading, staff looked only at your RepMap- and RepList­IntervalSet AFs and RIs. As you revise, try to both address their comments directly and generalize the feedback to improve your other ADTs.

The ps2 beta deadline is Monday at 10pm. Make sure you address all your code review comments from humans or marked #important by Checkstyle. If you need a slack day, remember to request it on Caesar.

Please ask questions on Piazza and visit lab or office hours.

Wed Mar 14: Problem Set 2 code review open, due Friday 11am

Problem Set 2 code reviewing is now open. Go to Caesar to find your reviewing assignments. You’ll have 6 files to review.

Please see the Code Reviewing page for guidelines and instructions. Remember that your classmates are people like you who are trying hard like you. Be nice.

Code reviews are due on Friday morning.

Fri Mar 9: Problem Set 1 grades

Overall ps1 grades and grade reports are now available on Omnivore.

To see your beta autograde report, go to Didit, follow the link to your psets/ps1 page, and click “beta” in the “Milestones” section.

Your manual grade was assigned by staff inspection of your tests, Search code, and your response to code reviews.

If you have questions, please see the FAQ about grading questions.

Fri Mar 9: Quiz 1 coming up in two weeks

Quiz 1 will be on Friday, March 23, 11:05am-11:55am, in Walker 3rd floor gym. That’s the usual class time, but not the usual class location.

The quiz is 50 minutes long, so class will end early that day.

The quiz will cover readings 1-15, from the start of the semester to next Monday’s class on equality. Any and all concepts from readings 1-15 may appear on the quiz. Quizzes from previous semesters of 6.031 and 6.005 can be found in the quiz archive, although their content may differ a bit from the topics we’ve discussed this semester.

The quiz is on paper, so you will not need your laptop. It is closed-book, closed-notes, but you may bring a single 8.5×11″ double-sided page of notes, readable without a magnifying glass. The notes must be created by you, not anybody else, since the process of creating a crib sheet is most of the learning benefit of it.

If you have a conflict with the quiz date, there will be a conflict exam on Wednesday, March 21, 4:05pm-4:55pm, in 32-G725. In order to take the conflict exam, you have to let us know in advance by making a private post on Piazza. The deadline for telling us that you will take the conflict exam is next Friday March 16.

A quiz review will be held during classtime on Wed March 21, and as always, you can visit office hours to ask quiz review questions, or post on Piazza.

Mon Mar 5: Problem Set 2

Problem Set 2 is now available. The ps2 alpha deadline is next Monday at 10pm.

After you wrap up ps1, please fill out the required Problem Set 1 reflection, which asks a few questions about how you worked on ps1. It should take only a minute to fill out, and is due by this Thursday at 10pm.

Fri Mar 2: Problem Set 1 alpha reports

Alpha grade reports and code reviews for ps1 are now available. As before:

  • To see your alpha autograde report, go to Didit, follow the link to your psets/ps1 page, and click “alpha” in the “Milestones” section.
  • To see your code reviews, go to Caesar and click on “ps1-alpha” under “submitted assignments.”

In autograding, your implementations were tested against staff tests, and your tests were tested using correct and incorrect staff implementations.

In manual grading, staff looked only at your AngularTest testing strategy for toDegrees and displacement. As you revise, try to both address their comments directly and generalize the feedback to improve your other tests.

The ps1 beta deadline is Monday at 10pm. Make sure you address all your code review comments from humans or marked #important by Checkstyle. If you need a slack day, remember to request it on Caesar.

Good work on a challenging problem set, and good luck on the beta! Please ask questions on Piazza and visit lab or office hours.

Wed Feb 28: Problem Set 1 code review open, due Friday 11am

Problem Set 1 code reviewing is now open. Go to Caesar to find your reviewing assignments. You’ll have 6 files to review.

Please see the Code Reviewing page for guidelines and instructions. Remember that your classmates are people like you who are trying hard like you. Be nice.

Code reviews are due on Friday morning.

Fri Feb 23: Problem Set 0 grades

Overall ps0 grades and grade reports are now available on Omnivore.

To see your beta autograde report, go to Didit, follow the link to your psets/ps0 page, and click “beta” in the “Milestones” section.

Your manual grade was assigned by staff inspection of your personal art code and your response to code reviews.

If you have questions, please see the FAQ about grading questions.

Mon Feb 19: Problem Set 1

Problem Set 1 is now available. The ps1 alpha deadline is next Monday at 10pm.

After you wrap up ps0 (due tomorrow), please fill out the required Problem Set 0 reflection, which asks a few questions about how you worked on ps0. It should take only a minute to fill out, and is due by Thursday at 10pm.

Fri Feb 16: Problem Set 0 alpha reports

Alpha grade reports and code reviews for ps0 are now available.

  • To see your alpha autograde report, go to Didit, follow the link to your psets/ps0 page, and click “alpha” in the “Milestones” section.
  • To see your code reviews, go to Caesar and click on “ps0-alpha” under “submitted assignments.”

In autograding, your submission was tested both by the public tests that were shown to you and by hidden tests. If you failed any hidden tests, you’ll see the name of the test that failed and a stack trace of where it failed. The test case inputs or code will not be revealed to you, either by Didit or by staff. The hidden tests are like bug reports from users in the field, where you get a rough idea of what the user was trying to do (the test name) and a stack trace of where the failure occurred. You need to figure out what’s wrong with your code from those clues.

You should revise ps0 for the beta deadline on Tuesday at 10pm. You can take slack on this deadline using Caesar, just like the alpha deadline, but the maximum slack you can take for this deadline is 1 day, because the Monday holiday already delayed the beta deadline by one day.

Your revised version of ps0 should fix any bugs found by the hidden tests, and you must address each of your code review comments made by humans or marked #important by the Checkstyle automatic style checker, as described in the code reviewing guidelines. You can also run Checkstyle yourself.

See the problem set handout for a breakdown of how your overall ps0 grade will be calculated.

Good luck! Please ask questions on Piazza and visit lab or office hours.

Wed Feb 14: Problem Set 0 code review due Friday 11am

Problem Set 0 code reviewing is now open. Go to Caesar to find your reviewing assignments. You’ll have 5 files to review.

Please see the Code Reviewing page for guidelines and instructions. Remember that your classmates are people like you, who are trying hard, like you. Be nice.

Code reviews are due before class on Friday.

Tue Feb 13: Nanoquiz makeups and in-class programming feedback

A reminder that nanoquiz grades are posted on Omnivore shortly after the end of each class, at which point the 7 × 24-hour makeup period begins.

For example, if you plan to submit a makeup for nanoquiz 1, the deadline is tomorrow afternoon. See Nanoquiz Grading and Makeup for details.

Checkoffs and feedback on your work in class are also posted on Omnivore under that class.

For example, you can see feedback on exercises in class 3. Click “inclass-programming” and select a particular exercise to find a link to Constellation where you can see the code that was graded — for example, the partitioning exercise.

Mon Feb 12: Problem Set 0 alpha due 10pm

Problem Set 0 alpha is due at 10pm tonight.

Remember that if you need an extension on a problem set iteration deadline, you must request it before your current deadline passes using Caesar, as described on the General Information page.

Wed Feb 7: Problem Set 0 and Getting Started

Problem Set 0 is now available.

For help getting started with Java, Eclipse, and Git: visit lab hours 7pm to 10pm in 32-044 on Thursday night. LAs will be there to help you install and set up the tools you need for 6.031.

You must have all the tools set up and ready before class at 11am on Friday. See Part I (problems 0 to 4) of ps0.

ps0 alpha is due Monday, February 12, at 10pm. ps0 beta will be due the following Monday. See the General Information page for a description of problem set submission deadlines.

If you need help with course material or programming in Java, please see the calendar of office and lab hours.

For almost all questions, Piazza is the place to ask. Once again, welcome to 6.031!

Wed Feb 7: Reading exercises and nanoquizzes

Welcome to 6.031!

In class today you completed some reading exercises in reading 1 and took a first nanoquiz. Your grades for the reading exercises and nanoquiz are now on Omnivore.

Reading 1 and reading 2 are online.

Reading exercises are due 10pm the evening before class, so reading 1 and 2 exercises are due at 10pm tomorrow.

In class on Friday we will take a nanoquiz on reading 2. Nanoquiz grades are posted at or soon after the end of class, at which point the 7 × 24-hour makeup period begins. See nanoquiz grading and makeup for details.

If you have questions, please ask on Piazza.

Tue Feb 6: Getting started in 6.031

Hello! 6.031 requires you to get up to speed quickly, setting up tools and learning the basics of Java. Get started here. Deadlines:

  • By 10pm Thursday night, you must complete the class 1 reading and class 2 reading, including programming exercises using the 6.031 Java Tutor in Eclipse.

  • By 11am Friday before class 2, you must complete all the exercises on the Getting Started page, and Part 1 of Problem Set 0. Problem Set 0 will be released tomorrow after class.

You can find these deadlines on the course calendar, plus lab hours where you can get help.

The only thing you need to do for the first class tomorrow is bring your laptop. It’s OK if it’s not set up with Java yet, and you don’t need to do reading 1 yet. If you did not receive our previous announcement, please keep reading…

Fri Jan 19: Welcome to 6.031!

You’re getting this message because you preregistered for 6.031. Welcome! A few announcements:

  1. In order to join the class properly, you must fill out this signup form. Please fill it out now. 6.031 is normally oversubscribed, so you must fill out this form before the end of the first class meeting on Wed Feb 7, or else you won’t be able totake the course for credit.

  2. 6.009 is a required prerequisite for this course. If you haven’t taken 6.009 (or its pilot version 6.S04), you won’t be able to take 6.031 for credit, only as a listener.

  3. You will need to bring a laptop to every 6.031 class meeting, including the first meeting on Wed Feb 7. If you don’t have a laptop, IS&T can lend you one.

See you in February!