5 Placement AFQ

Q: Can I join the placement if it’s already begun?

Yes, you may; you don’t have to reach out to us, just start turning in your work. The only rule is you have to finish it before the final due date (read on to understand what the due dates mean). After the final due date we close the process. All of us staff have other tasks to tend to, so we can’t re-open it for individuals—sorry.

Q: Are there any prerequisites?

No, by design. We’ve noticed that there is no computing background that more than 1/3 of the placement students have, so any prerequisite we expect would be unfair to 2/3 of the students. More broadly, the goal of coming to college is to learn new things, not just to demonstrate what you previously know. We have therefore designed a process that lets you learn and demonstrate learning.

Q: Should I do anything now to prepare for the placement?

No, you don’t have to do anything.

Q: Will it be self-contained?

Yes! In general, none of our introductory computer science courses expect you have had any prior computer science!

You can start reading any time you want: Readings. You can also self-test: Self-Testing.

Q: Do I actually need as much time as we’re being given?

No! You aren’t expected to be working every day for 1.5 months! We give you ample time because:
  • Some of you are learning programming for the first time. That’s not easy; it takes time. We want you to have a fair shot at this.

  • Even if you’ve programmed before, we’re expecting you to do so in a somewhat different fashion from what you’ve seen. That will introduce a bit of a learning curve.

  • Many of you have other things going on in the summer.

Most students can expect to spend the equivalent of a day or two learning material (maybe longer if you’ve never programmed before, less if you have, though overconfidence may also hurt you) and a few hours doing each homework.

Q: What do I need to turn in work?

All work will be turned in using Gradescope. We will notify you via EdStem when the Gradescope instance is ready. You do not need a Brown account to submit; therefore, RISD students can also submit without having a Brown account.

Q: What do the grades on Gradescope mean?

Nothing.

Well, almost nothing.

Gradescope insists on assigning numbers to everything (a common mistake that computer scientists make, and guess who built Gradescope). This doesn’t match the grading processes we like to use in this course. Since we can’t win this fight with Gradescope, we simply compute a percentage based on how many tests you passed, and report that back to you. In general, a grade of 100 of course means you passed all the tests, but we will also be checking your code for quality (against the Design Recipe), which means you could end up with less than a perfect score even if Gradescope gives you a 100. So don’t be mislead by that number.

Q: What do the “due” dates mean? What are the actual deadlines?

We want to accommodate a variety of summer schedules. At the same time, we don’t want to be in a constant state of grading ourselves (since we also have other, full-time work in the summer). Therefore, most assignments have (soft) “due” dates, but there is one (hard) final due date.

All work is technically only due by the listed final date. If you can’t meet the earlier, “due” dates—whether you’re traveling, started late, working, or whatever else—no problem. Just make sure you turn everything in by that final date.

However, if you only turn everything in at the end, you may fare poorly. You may have made mistakes on earlier assignments that, given feedback, you could have fixed in later ones.

Therefore, most assignments have a soft “due” date. If you turn in your work for that assignment by that date, we will give you feedback soon after. You will then be able to use this feedback to improve your performance for the next submission. If you miss the “due” date, there is no guarantee you will get feedback on that assignment until after the final hard deadline.

Note that once you have gotten a grade for an assignment, you cannot turn it in again. In particular, you cannot use the soft due date to turn it in, get a grade, then use that feedback to turn it in again by the hard due date. You have to show improvements in the next assignment instead.

In short, in the best of Brown traditions, we leave it to you to decide how you want to structure your summer. You do not need to inform us about your plans. Since the “due” dates are soft, you don’t need to ask for an “extension”—it’s automatic. You can meet some soft deadlines but not others: your choice. The only deadline that is not negotiable is the final due date.

Note that this late policy applies only during the summer. There is a completely different policy once the semester begins.

Q: Can I submit work early?

Yes. Any time after an assignment becomes public, you can submit solutions. However, we will not look at your work (or provide feedback) until the soft due date.

If you post questions on the forum, please make sure you pick the correct tag, to avoid confusing students who are in earlier homeworks with questions about later ones.

Q: Will the placement process be effective in helping me decide which class to take?

We believe so. It’s based on past placement activities that have been found helpful through both qualitative and quantitative checks as well as student input.

However, some students find that the pace and intensity of summer placement is much less than that of the course. This is by design: you are presumably doing other things in the summer and not trying to take a challenging computer science course in addition. Therefore, you can expect the course to be somewhat more demanding than the placement.

Q: Does the placement require prior knowledge of computer science?

This is a complicated question.

On the one hand, the process is intended for students who can accelerate the entire first year into a semester. These are most probably going to be students who have had some prior computer science experience. If you have no prior knowledge:
  • The other three introductory courses for concentrators—0111, 0150, and 0170—are expressly designed for students who have not studied computer science before (and will give you all the same opportunities to concentrate in the subject). Therefore, for most students without any background, those other introductory courses are likely to be more appropriate.

  • However, prior knowledge is not a requirement. We will in fact make available material for self-study that you are welcome to use. Therefore, if you’re motivated (or just bored over summer!), you are welcome to try the materials and then the placement. In fact, every year a small number of students with no prior computer science do take and do well in 0190.

  • That said, do note that the materials may be quite demanding to study on your own. If you feel this way, don’t be discouraged from studying computer science entirely! It might just mean that 0111, 0150, and 0170 are better for you. Please do take one of those courses.

Every year a small number of students who have had no prior exposure to CS get into the class and do well in it. This is a test of what you can learn here, not a test of your prior knowledge.

Coversely, prior knowledge may even get in the way. We will expect you to program in a particular way that probably doesn’t match what you’ve done before. If you decide you “already know everything” you probably won’t pay attention to this, and may very well fail to place into the course.

Q: If I don’t want to continue with the placement process, what do I need to do?

Nothing! We simply assume that anyone who hasn’t turned in all the placement work by the deadline is no longer interested. We don’t do any additional bookkeeping, so you don’t need to tell us or explain yourself. You are welcome to stay on the forum if you’d like, or unsubscribe—your choice.