Blogs and Discussion Roles
Blogs
For each lecture, except for three marked in the calendar (virtual machines in week 1,
agility in week two, and energy in week 3),
you are required to submit a blog post to the relevant canvas thread
due midnight the day before the class discussion for that paper. We will accept late submissions
for 50% credit up to the class period when the paper will be discussed. We will not grade or count
submissions made after the start of class. We grant two mulligans - i.e., we will throw out your lowest two scores.
Some entries in the calendar have two closely related papers assigned; please do a combined blog post in those cases.
Other entries in the calendar have a "Background" paper or textbook chapter. These are optional readings.
The textbook chapters are for context if you need it to understand the paper. The background papers can serve
as a prompt for the "extend" part of the blog entry, described below.
Do not use ChatGPT or other AI method to generating the blog post.
We are sure that it can do a fine job, but it doesn't need the practice; you probably do.
Blog posts must have two clearly labeled parts: summary and extend.
- First, write a semi-objective summary of the paper(s) in your own
words. Your summary should answer each of the following questions:
- What problem is the paper solving, and why is that problem important?
- What are the main ideas that it is using to solve that problem?
- What was the previous state of the art, and how does this paper advance the state of the art?
- How does the system work, and what are the key insights in the design?
- How is it evaluated, and what are the key results?
This should be kept to a paragraph or two.
- Second, extend your summary with a unique perspective
on the paper. For this, you may (and should) draw on your own experiences and judgment.
As long as the comment is interesting, you are free to write on any topic related to the paper.
We define "interesting" in the context of what other students have already written,
so there is an advantage to posting early.
Here are some prompts you can use.
- Background Reading: For most lectures, we have provided a closely related paper that preceded or followed the
paper under discussion. Skim the background paper and compare and constrast the two approaches. Or compare and contrast to one of the other papers in the reading list.
- Context: Is there key background knowledge or context needed to fully understand the
paper, but isn't fully explained in the paper itself? An example might be technology assumptions made by the paper
(e.g., ones that no longer hold). Fill in some of the gaps in the paper's description.
- Explanation: Identify something confusing about the paper that you wished that it had explained more clearly.
Or answer another student's question.
- Advocate or Skeptic: What did the paper get right or wrong, in your view? Is the argument flawed or
confusing? Is the empirical evidence convincing or is it missing
something? What about the design? Would you have done things differently, with the benefit of hindsight?
- View from the Side: Have similar ideas been applied in other domains, such as databases, security, or
programming languages? Give an example, or a counterexample, or a missed opportunity (where the ideas should have been applied, but haven't been).
- Followup Work: Pick a subsequent paper or commercial product that leveraged, were inspired by, or reacted against
the ideas in the paper, and discuss how well that worked, in your view.
- Open Questions: Does the paper open up additional research research opportunities? Pick one and sketch
that project.
- Future Impact: Did the paper have, or for more recent papers do you believe the paper will have, significant impact
on commercial practice a decade or more after its publication? If so, explain why or why not.
Class Discussion Roles
The goal of the class discussion is not only to understand the topic of the assigned paper (and related papers)
in more depth, it is also the meta-goal of improving your ability to gain that understanding on your own for future
papers that you read.
Class discussion roles formalize the questions you should ask yourself about any paper that you read;
after a while, considering a paper from multiple perspectives will become second nature.
There are ten roles for each paper; you are to sign up for each role once
during the quarter.
Please spread these out - do not sign up for multiple roles for the same paper.
If, and only if, there is one person signed up for every role for a particular paper, you should double up.
For almost all slots, there will be two students in each role - please work together on a combined answer.
The signup sheet is
here.
It will go live Tuesday January 2 at 5pm.
The roles are largely taken from the blog prompts:
- Summary: summarize the main ideas in the paper.
- Context: Is there context needed to understand the paper? If so, explain.
- Prior Work: what was the previous state of the art, and how does the paper improve on that?
- Design/Eval: how does the system work and what are the key results from the evaluation?
- Advocate: advocate for the ideas in the paper.
- Skeptic: advocate against the ideas in the paper.
- Background: compare and contrast with the background paper (if none, pick the most closely related paper from the reading list to compare/contrast).
- Side View: how do the ideas in the paper apply to related disciplines, such as programming languages or databases?
- Open Questions: what further research is suggested by the paper?
- Future Impact: what impact did the paper have, or might have in the future, on commercial practice,
either in cloud computing or some other domain?