Sample Exam for CS50B
Sign in to Google to save your progress. Learn more
Email *
Name *
HUID *
Google Forms doesn't autosave responses, so if you start inputting your answers and something goes wrong, keep in mind that you might lose your work. For longer answers, best to write (and save) them in a file on your own computer and then paste them into this form only once you're ready to submit. *
Solving Problems
How does abstraction help engineers (and humans more generally!) solve problems? *
What's an example of a design decision an engineer might make in order to save TIME at the expense of SPACE? *
What's an example of a design decision an engineer might make in order to save SPACE at the expense of TIME? *
Cryptocurrency
If unfamiliar, here's how bitcoin, a "cryptocurrency," works, https://www.youtube.com/embed/bBC-nXj3Ng4?end=1314. Watch up through 00:21:54.
What, in your own words, is a blockchain? How does bitcoin use a blockchain? *
What problem does a (cryptographic) hash function solve for bitcoin? *
In the context of hash tables, we discussed a hash function that, given a string, returns a number from 0 through 25 (representing A through Z), based on that string's first character. Why is that hash function unsuitable as a cryptographic hash function? *
Stacking Technologies
What are two (2) factors should inform your choice of a programming language when building a product? *
Mobility
Why might you want to implement a product as a NATIVE app instead of as a WEB app? *
Why might you want to implement a product as a WEB app instead of as a NATIVE app? *
Hello, Java
In https://sandbox.cs50.io/a8d74fc9-0b78-473d-b297-e72a50c95628 is the source code for a program written in not Python but Java! Suppose that, as the most technical person in your firm, you've been handed this code (even though you don't actually know Java!) and been asked to compile and run it. Armed only with your intuition and Google, ascertain how.
Via what single command can you compile that program? *
Via what single command can you run that program, once compiled? *
Change the program in such a way that it first prompts a user for their name and then prints "hello, so-and-so", where so-and-so is their name. Then, paste the URL of your sandbox here. *
In a new sandbox, which you can create at https://sandbox.cs50.io/, rewrite that same program in Python in a file called hello.py. Then, paste the URL of your sandbox here. *
Net Neutrality
If unfamiliar, here's a look at the issue of net neutrality, https://www.youtube.com/watch?v=92vuuZt7wak, with a follow-up at http://euro.ecom.cmu.edu/program/law/08-732/Neutrality/Primer.pdf.
In your own words, what is net neutrality? *
Technologically, how might an internet service provider (e.g., Comcast) implement prioritization of some traffic over other? *
Cookies
Per https://blog.chromium.org/2020/01/building-more-private-web-path-towards.html, Google plans to eliminate support for "third-party" cookies in Chrome, just as Firefox and Safari already have.
What's the difference between a first-party and third-party cookie? *
What are, at least, two features of today's websites that might break (i.e., stop working) if third-party cookies are disabled? *
Trusting Trust
In 1984, a computer scientist named Ken Thompson won the "Turing Award," which is considered the "Nobel Prize of computer science." In accepting the award, he gave this speech, https://cdn.cs50.net/hls/2020/winter/assignments/final/Thompson_1984_ReflectionsonTrustingTrust.pdf. Not to worry if you don't understand some of the code therein.
Why can't you trust code that you did not totally create yourself? *
Should companies or countries trust hardware created by other companies or countries? *
How can you, as a user, (try to) communicate securely using potentially insecure software and hardware? *
Insecurities
Suppose that you're asked by a customer if your company's systems are secure. Why is it best to think of security in terms of costs and probabilities rather than in such absolute terms? *
What are three (3) best practices that you'd recommend a company adopt in order to secure their systems and, in turn, code and data? *
Debrief
About how many HOURS would you say you spent on this final assignment in total? *
Just to set expectations for future students.
What changes would you recommend for next year's CS50 for MBAs, structurally or curricularly?
What did DAVID do well? Not well?
Comments
Future Students
What would you say was your biggest takeaway from CS50 for MBAs?
What would you like future prospective students to know about CS50 for MBAs?
On average, about how many HOURS per week did you spend on CS50 for MBAs, EXCLUDING time spent physically in classes (and, if applicable, labs)?
Can we anonymously post your responses to the last three questions for future prospective students on the course's website?
Clear selection
A copy of your responses will be emailed to the address you provided.
Submit
Clear form
Never submit passwords through Google Forms.
reCAPTCHA
This content is neither created nor endorsed by Google. Report Abuse - Terms of Service - Privacy Policy