Odds are, at some point in your life, you’ve used the Internet. In fact, more likely than not you use it many times a day, every single day, and have done so for as far back as you can remember. Given that level of real-world Internet experience, it won’t surprise you to know that the Web contains a lot of very useful data… and also some data that might not be quite so useful:

Good luck getting that out of your head.

In this writing assessment, we’re going to try to home in on some of the corners of the Internet to keep your eye on as we begin to explore computer science in more depth.

The great thing about living what is commonly (mostly in non-tech circles) called the Digital Age is that there is always some new device or technology emerging that promises to revolutionize the way we live our lives. Some of these technologies do.[1] Others, not so much.[2] Also fortunately for us, despite the Internet being a pretty big place, there are plenty of sites that dedicate themselves to reporting the latest tech-oriented news, product reviews, and commentary on how technologies impact our lives.

Sites like TechCrunch, Wired, Gizmodo, Mashable, and TechRadar are just a few of these websites that we at CS50 keep bookmarked in our browsers so we can always stay on top of the latest developments. Frequently these articles inform our understanding of new products, make us rethink previously-held opinions, or cause us to think about some of the implications of the technology that might not have seemed apparent at first glance. It’s particularly the last item that we’re focusing on in this assignment.

Academic Honesty

This course’s philosophy on academic honesty is best stated as "be reasonable." The course recognizes that interactions with classmates and others can facilitate mastery of the course’s material. However, there remains a line between enlisting the help of another and submitting the work of another. This policy characterizes both sides of that line.

The essence of all work that you submit to this course must be your own. Collaboration on assignments is not permitted (unless explicitly stated otherwise) except to the extent that you may ask classmates and others for help so long as that help does not reduce to another doing your work for you. Generally speaking, when asking for help, you may show your code or writing to others, but you may not view theirs, so long as you and they respect this policy’s other constraints. Collaboration on quizzes and tests is not permitted at all. Collaboration on the final project is permitted to the extent prescribed by its specification.

Below are rules of thumb that (inexhaustively) characterize acts that the course considers reasonable and not reasonable. If in doubt as to whether some act is reasonable, do not commit it until you solicit and receive approval in writing the course heads. If a violation of this policy is suspected and confirmed, the course reserves the right to impose local sanctions on top of any disciplinary outcome that may include an unsatisfactory or failing grade for work submitted or for the course itself.


  • Communicating with classmates about assignments in English (or some other spoken language).

  • Discussing the course’s material with others in order to understand it better.

  • Helping a classmate identify a bug in his or her code, such as by viewing, compiling, or running his or her code, even on your own computer.

  • Incorporating snippets of code that you find online or elsewhere into your own code, provided that those snippets are not themselves solutions to assigned problems and that you cite the snippets' origins.

  • Reviewing past years' quizzes, tests, and solutions thereto.

  • Sending or showing code that you’ve written to someone, possibly a classmate, so that he or she might help you identify and fix a bug.

  • Sharing snippets of your own solutions to assignments online so that others might help you identify and fix a bug or other issue.

  • Turning to the web or elsewhere for instruction beyond the course’s own, for references, and for solutions to technical difficulties, but not for outright solutions to assignments.

  • Whiteboarding solutions to assignments with others using diagrams or pseudocode but not actual code.

  • Working with (and even paying) a tutor to help you with the course, provided the tutor does not do your work for you.

Not Reasonable

  • Accessing a solution to some assignment prior to (re-)submitting your own.

  • Asking a classmate to see his or her solution to an assignment before (re-)submitting your own.

  • Decompiling, deobfuscating, or disassembling the staff’s solutions to assignments.

  • Failing to cite (as with comments) the origins of code, writing, or techniques that you discover outside of the course’s own lessons and integrate into your own work, even while respecting this policy’s other constraints.

  • Giving or showing to a classmate a solution to an assignment when it is he or she, and not you, who is struggling to solve it.

  • Looking at another individual’s work during a quiz or test.

  • Paying or offering to pay an individual for work that you may submit as (part of) your own.

  • Providing or making available solutions to assignmnts to individuals who might take this course in the future.

  • Searching for, soliciting, or viewing a quiz’s questions or answers prior to taking the quiz.

  • Searching for or soliciting outright solutions to assignments online or elsewhere.

  • Splitting an assignments’s workload with another individual and combining your work (unless explicitly authorized by the assignment itself).

  • Submitting (after possibly modifying) the work of another individual beyond allowed snippets.

  • Submitting the same or similar work to this course that you have submitted or will submit to another.

  • Using resources during a quiz beyond those explicitly allowed in the quiz’s instructions.

  • Viewing another’s solution to an assignment and basing your own solution on it.


Your work on this writing assessment will be evaluated along three axes primarily:


To what extent does your submission align with the requirements of the specification?


To what extent is your submission correct and free of factual errors?


To what extent is your submission readable (i.e., thoughtfully organized, coherent, words properly spelled)?

All students, whether or not taking the course for a letter grade, must ordinarily submit this writing assessment to be eligible for a satisfactory grade unless granted an exception in writing by the course’s heads.


Pick some piece of technology with which you are familiar and that you might use everyday. It needn’t be a piece of hardware; software, websites, and the like are perfectly fine too. Explore it in depth. Find some articles about recent developments (within the last three months) in this technology that have been posted on sites like the ones described earlier. Specifically, you should read a minimum of five (5) articles about the technology you’ve chosen, and include your list of sources at the end of your paper.[3]

Then, in 750 to 1,000 words, expound on this technology. Assume for the purposes of this assignment that your audience is someone who has no prior knowledge about the technology you are describing, and so your objective is to provide them with a well-rounded, unbiased summary. In writing your response, you should consider this (non-exhaustive) list of questions a good starting point:

  • What is this technology called?

  • What does it do?

  • How does someone use this technology?

  • How is its quality of performance commonly measured? (e.g. in megabytes (MB), gigahertz (GHz), etc.)

  • How does the recent news about the technology change the product or service?

  • What older form of technology does it replace, if any?

  • How has this technology impacted your life, for better or worse

  • How has this technology impacted society at large, for better or worse?

It’s worth mentioning here that other than reporting on some technical specifications, which you may not have previously known but which may be listed in the articles themselves, you shouldn’t be using text from your sources in your assignment directly. Rather, the articles you read will hopefully provide slightly different perspectives on the technology you’ve chosen, and you should synthesize those perspectives to comment on the technology more broadly.

To be clear, you are not standing in the role of a salesperson when preparing this assessment. Make sure to speak factually for the most part, and if you do cite or offer an opinion on the product (e.g., "I think this product is great because…"), be sure that your paper is balanced by offering the opposing opinion too (e.g., "Some people might dislike this product because…").


Extensions on the writing assessment are not granted, except in cases of emergency. Technical difficulties are not considered emergencies. Submitting more than seven minutes late is equivalent to not submitting at all.

This writing assessment has three submission milestones.


due Monday, March 7 by noon

The proposal is your opportunity to receive approval and counsel from your teaching fellow before you proceed. Submitting a proposal amounts to answering a few questions about your idea. Once you have a technology in mind, submit your proposal by filling in the form that will soon be linked here.

Your teaching fellow will either approve your proposal or require modifications on your part for subsequent approval. Your proposal, even if approved, is not binding; you may alter your plan at any point, provided you obtain the staff’s approval for any modifcations. Writing assignments submitted without approval may not receive credit.

Status Report

due Monday, March 14 by noon

Not only is the status intended to keep the staff apprised of your progress, it is an opportunity to keep yourself on track. Submitting a status report amounts to answering a few questions about your paper. You will eventually submit your status report via a form to be shared here later.


due Monday, March 21 by noon

Ultimately, you will turn in your paper (consisting of 750 to 1,000 words) to your teaching fellow. Specific instructions for that will be posted as we draw closer to the due date.

This was the CSCI E-50a Writing Assessment.

1. https://www.facebook.com
2. https://en.wikipedia.org/wiki/Betamax
3. Your list of sources needn’t be prepared as a bibliography following any particular citation style, but do be sure to include for each the name of the article read, name of the website or publication where you found the article, date the article was written, author’s name, and URL, if found online.