Reflection Problems for Project
Problems 1 and 2 (Reflection) due at 11:59pm, Monday, November 4, 2024.
Problem 3 (Reflection) due at 11:59pm, Monday, December 2, 2024.
Problems 4 and 5 (Reflection) due at 11:59pm, Tuesday, December 10, 2024.
All submissions should be done via Autolab.
Acknowledgment
The development of the project was supported by a Mozilla Responsible Computer Science award . The support is gratefully acknowledged.
Some Suggestions and Warnings
While this coding part of the project is somewhat similar to Question 3s on the homework, there are some crucial differences and we wanted to highlight few things for y'all upfront:
Form groups of size EXACTLY $3$
This is a group project (unlike Q3s on the HWs that had to be done individually) and you can work in groups of size exactly 3. The submissions will be on Autolab and everyone in the group will get the same grade.
The same group for ALL problems
You are expected to work in the same group for ALL problems in the coding project. Not doing so will be considered to be an academic integrity violation. We will use the groups y'all register on Autolab as part of your Autolab Project Group Registration submission for your project submissions.
There is ONE exception to the above rule: It is OK if the group becomes smaller (e.g. if a group member resigns) but in that case another student cannot be added to group. If you need clarification on this, please get in touch with Atri.
Start early!
There is a reason we are giving y'all about two months to do this project. If your group starts even the week before the project is due, your group will be in trouble especially beyond the first problem. Also for most problems you will have to think of algorithms beyond what we cover in class, so the more time your spend on this, the better.
Use the Notation Table
The project description is a bit notation heavy. If you start losing track, here is the notation page (opens in a new window) that might be useful.
Background and Problem Statements
See the main project page for details on problem statements.
Submitting as a group on Autolab
As mentioned above, you will be working on this project as a group. This mean y'all will also submit your reflection PDF as a group. Here is a quick primer on how to register your group on Autolab and to submit as a group (opens in a new page).
The Reflection Problem Details
In the coding problems in the project y'all submitted code for five problems, where each problem had different constraints that y'all had to deal with. In the reflection part of the problem, y'all will think about some of design decisions y'all made in your algorithms and think about how your design decisions would affect in the real world.
Since these reflection problems are a bit unlike the rest of the course, before stating the reflection problems, here are some clarifications to get y'all in the right frame of mind.
There is no "right" or "wrong" answer
Perhaps the biggest difference from other CSE 331 questions (both programming and proof based questions) is that pretty no much no answer is "right" or "wrong" in any absolute sense. Y'all will notice that for some of the questions, the answer might depend on some of the assumptions you make -- and in many cases the answer would really depend on who is answering the question. While ambiguity might feel a bit disquieting, the ambiguity is inherent for these kinds of questions: so embrace the ambiguity!
More specifically, do not waste your time trying to figure out what I am expecting from an answer-- because I do not have any set answer that I'm looking for! What I am interested is in hearing your group's thoughts on the questions. In particular, even if I disagree with your justification, that does NOT mean you will get penalized. Again there is no "right" or "wrong" answer!
The justifications do not have to be long
While it might seem like there are a lot of questions, please note that we are not expecting really long details justifications. In most cases a couple of sentences or a paragraph would suffice. To give a sense of the amount of detail expected, think of the level of detail to be on the lines of what is expected of y'all in a proof idea. So we only want to read about the main ideas behind your justification.
What are the questions going to ask?
With the exception of Problem 1 and 5, the reflection questions will ask you to first state the algorithm idea of your submission for the corresponding coding question and will then ask you to reflect upon the effects of those choices on customers.
In addition some of the questions will ask you to think about more general questions related to the corresponding coding problem (or the project as a whole).
A useful resource
For the specific reflection questions, we will be quoting from Cathy O'Neil and Hanna Gunn's book chapter titled Near-Term Artificial Intelligence and the Ethical Matrix .
You can access the book chapter as a PDF from UB Libraries .
While the book is about ethical issues in AI, the concepts in the book chapter are applicable more widely and in particular, for our project (that does not have anything to do with AI).
Grading Guidelines
The grading works a little differently for the reflection problems.
Unless mentioned otherwise, we will follow this grading scheme (which is a parred down version of the scheme we use for proof-based questions on the homeworks:
- Level 0. This means the group gets $0\%$ of the points. This is for submissions where there is no answer or for answers that have no justification (or the justification clearly shows no effort).
- Level 1. This means the group gets $50\%$ of the points. This is for submissions where there is an answer along with a justification but the justification has some obvious flaw(s).
- Level 2. This means the group gets $100\%$ of the points. This is for submissions where there is an answer along with a justification that does not have any obvious flaw. Again, remember there is no "right" or "wrong" answer.
For each of the reflections questions below, we will present a preliminary instantiation of the generic grading rubric above. In actual grading, we will use a grading rubric that expands on the preliminary grading rubrics below.
Problem 1 (10 points)
This question is a bit different
Unlike the questions for other problems, for Problem 1, the question is related to the project as a whole (and is not really related to the first coding problem). So please make sure you at least read all the problem statements before attempting this question.
Who/What are stakeholders?
In this question, you will have to identify stakeholders in the projects (i.e. think of all the five problems) when answering this question. Roughly speaking a stakeholder is an entity (could be individuals or a collection of individuals) who have some "stake" in a setup/company (in this case think of stakeholders in the entire setup of the project): this could be some obvious ones like customers of a company or it could be more subtle e.g. a governmental agency that regulates an industry for example.
Your Task
Cathy O’Neil and Hanna Gunn’s ethical matrix for algorithm design begins with a simple question: Does my algorithm work? However, algorithms do not “work” in a vacuum. So, this question becomes more complicated when we also ask: Whom does my algorithm work for?
Below, we’ve provided five entities that are interested in how well your algorithm works for them. These are your stakeholders. For reference, stakeholders are those who have a unique “stake” in an enterprise. They are the groups of people interested in and affected by the work your algorithm will do. Each stakeholder group in your list must have their own unique set of interests or concerns. For example, you could not list two stakeholders who are only concerned with “profit” because they would be considered the same group as they have the same stake. Your task is to list the stakes for these five stakeholders in your routing algorithm. This will require you to imagine the needs of these stakeholders and the concerns they might have about how your design works.
Listed below are five entities. In your submission, for each entity,
- list the stakes for these five stakeholders in the project setup.
Stakeholder 1 (2 point)
Stakeholder 2 (2 point)
Stakeholder 3 (2 point)
Local/state legal system.
Stakeholder 4 (2 point)
Internet customers in rural areas.
Stakeholder 5 (2 point)
Internet customers in urban areas.
Submission
Submit all answers in one PDF
We recommend that you typeset your solution but we will accept scans of handwritten solution-- you have to make sure that the scan is legible. Your group needs to submit one PDF for the first reflection problem.
Note
If you do not have separated out answers for all the $5$ stakeholders, you will get a zero(0) irrespective of the "correctness" of your solution..
Preliminary Grading Guidelines
Below is a preliminary instantiation of the generic grading rubric above for (all five parts of) Problem 1. In actual grading, we will use a grading rubric that expands on the preliminary grading rubric below.
- Level 0
- The authors did not respond with all 5 stakes; OR
- Answers may not be entirely relevant to the assignment.
- Level 1
- The authors did respond with all 5 stakes. Although, the responses may be underdeveloped; AND
- The authors clearly understand the questions, but have not demonstrated much effort in thinking through the different interests each stakeholder would have. Answers may seem perfunctory.
- Level 2
- The authors respond with all 5 stakes thoroughly and thoughtfully; AND
- The authors clearly demonstrate their grasp of the questions and the various perspectives each stakeholder might have on the same design; AND
- They demonstrate that what stakeholders’ value differs depending on their own context.
PDF only please
If Autolab cannot display your file, (irrespective of the reason) then you will get a zero (0) on the entire question.
Autolab might not be able to display files in formats other than PDF (e.g. Word cannot be displayed). Note that Autolab will "accept" your submission even if you submit non-PDF file, so it is YOUR responsibility to make sure you submit in the correct format.
Also the file size has to be at most 3MB.
Problem 2 (10 points)
Back to "normal" service
Starting with this problem, the rest of the reflection problems will be directly related to the corresponding coding problems. E.g., this reflection question is based on what you did for the second coding problem.
Your Task
Listed below are four questions. The first question is to present the algorithm idea of the code that you submitted for the second coding problem. For the rest of the questions, you group has to answer each question and justify your answers.
Now that you’ve had a chance to think about your design, reflect on how your algorithm works for your stakeholders and which stakeholders it performs best for. Ideally, everyone on your network would receive the same services consistently, but in actuality this is difficult to realize.
In their book chapter, O’Neil and Gunn suggest bringing stakeholders into the room and asking for their desired outcomes and concerns. However, in this situation, we will assume the ForProfitOnly
company you work for is not interested in hosting this conversation. Thus, as the software designer you are tasked with imagining what your stakeholders need and designing your algorithm to meet as many of those needs as possible.
As O’Neil and Gunn argue, design decisions are often also moral decisions (250). If your algorithm works well for customers in urban areas, but not rural ones, then you’ve made a decision to supply rural residents with systemically slower internet. This decision raises an ethical question of fairness. Unfortunately, there is no current industry standard for defining fairness in algorithmic design. So, for this assignment, we are using O’Neil and Gunn’s definition in their book chapter. O’Neil and Gunn argue that “fair institutions and policies can be understood as those that are not significantly responsive to arbitrary differences between individuals and that do not disadvantage those whom we already recognize as being disadvantaged” (253). Thus, in our earlier example, an algorithm that works well for urban customers, but not rural ones, would privilege urban customers.
We should note that fairness is not binary. You cannot simply assess a complex system as being completely fair or completely unfair. Fairness exists on a spectrum and changes depending on which stakeholders we are concerned with. So, if you answer question four below by simply stating “my algorithm is fair/unfair,” you will not receive full credit.
For this reflection, please answer these questions:
Algorithm Idea (2 points)
In one paragraph, state the algorithm idea behind the code that you submitted for the second coding problem. This would be similar to a usual algorithm idea submission in a homework.
Whom does your algorithm work best for? (2 points)
What clients does your algorithm try to make their $pen_0$ value to be $0$? I.e. for which clients $c$ does your algorithm try to make sure to try get the $\text{pmt}_c$ revenue from them? Show how your answer follows from the algorithm idea above.
Whom doesn’t your algorithm work well for? (2 points)
What clients does your algorithm not try (actively) to make their $pen_0$ value to be $0$? I.e. for which clients $c$ does your algorithm not mind to get a revenue of $c$ from them? Show how your answer follows from the algorithm idea above.
How fair is your algorithm? (4 points)
How fair was the decision that your group made in the algorithm design to favor one group of customers (those identified in the second question above) over another (those identified in the third question above? Justify your answer.
If some of your customers are not as well served as others, are there ways for you to address this unfairness that might result in a more ethical distribution of services?
Submission
Submit all answers in one PDF
We recommend that you typeset your solution but we will accept scans of handwritten solution-- you have to make sure that the scan is legible. Your group needs to submit one PDF for the second reflection problem.
Note
If you do not have separated out answers for all the $4$ questions above, you will get a zero(0) irrespective of the "correctness" of your solution..
Preliminary Grading Guidelines
Below is a preliminary instantiation of the generic grading rubric above for (the last three questions) on Problem 2. (The Algorithm Idea part will be graded similarly to algorithm ideas in homework submissions.) In actual grading, we will use a grading rubric that expands on the preliminary grading rubric below.
- Level 0.
- The authors did not answer all reflective questions; OR
- Answers may not be entirely relevant to the assignment.
- Level 1.
- The authors answers all reflective questions, although the responses are underdeveloped; AND
- (For the 2nd and 3rd questions) Authors have identified un/favored users/stakeholders, but have either missed a stakeholder who should have been identified as either favored or unfavored OR have given little justification for their assessment.
- (For the 4th question) The authors clearly understand the questions, but have not demonstrated much effort in thinking through the connection between their algorithm and fairness to stakeholders. Answers may seem perfunctory.
- Level 2.
- The authors answer all reflective questions thoroughly and thoughtfully; AND
- (For the 2nd and 3rd questions) The authors clearly demonstrate their grasp of the questions and their algorithm’s potential to favor some users/stakeholders interests over others.
- (For the 4th question) Outside sources— i.e. O’Neil and/or Gunn’s definition of fairness (or parts of their definitions)—are directly referenced in responses. Authors have clearly connected these sources to their own designs.
PDF only please
If Autolab cannot display your file, (irrespective of the reason) then you will get a zero (0) on the entire question.
Autolab might not be able to display files in formats other than PDF (e.g. Word cannot be displayed). Note that Autolab will "accept" your submission even if you submit non-PDF file, so it is YOUR responsibility to make sure you submit in the correct format.
Also the file size has to be at most 3MB.
Problem 3 (25 points)
Your Task
Listed below are seven questions. The first question is to present the algorithm idea of the code that you submitted for the third coding problem. For the rest of the questions, you group has to answer each question and justify your answers.
Coding problem three raises the question: When an algorithm doesn’t work as advertised, who is responsible? Accountability for proprietary informational technologies can be difficult to assign. As you’ve seen in the problem description, both the Office of the Attorney General and the Federal Communications Commission have assigned responsibility to your ForProfitOnly
employer based on customer complaints and their own bandwidth tests.
Obviously, as a software engineer, you have little control over how your ForProfitOnly
company advertises its products. However, as O’Neil and Gunn argue, both designers and deployers of algorithms bear an ethical responsibility for the consequences of their designs. Developers, in particular are “in a unique position of responsibility over the design of the algorithm as they are typically the only ones in a position to understand how the algorithm functions and are responsible for rendering the design goals into the algorithm” (242). As you no doubt saw in the problem description, most of the customers who complained didn’t know (or even really need to know) why their internet did not meet advertised speeds, only that it did not meet them. And while it might be tempting to assign responsibility to customers for leasing older model routers, they are not responsible for ensuring a paid service works. In this case, you are responsible.
For reflection three, please answer the following questions about designers’ responsibility for how their algorithm works:
Algorithm Idea (2 points)
State the algorithm idea behind the code that you submitted for for the third coding problem. This would be similar to an usual algorithm idea submission in a homework (though it does not really have to longer than one paragraph)
Lawsuit threat (2 points)
How did the threat of a lawsuit change your group's algorithm idea from the second coding problem to this problem? Specifically, which changes were motivated by the lawsuit threat, and why did you choose those adjustments as opposed to others?
FCC fine threat (2 points)
How did the threat of an FCC fine change your group's algorithm idea from the second coding problem to this problem? Specifically, which changes were motivated by the FCC fine, and why did you choose those adjustments as opposed to others?
Which customers are favored? (3 points)
Which clients did the changes to the bandwidth values favor? Show how your answer follows from the algorithm idea above.
Which customers are not favored? (3 points)
Which clients did the changes to the bandwidth values not favor? Show how your answer follows from the algorithm idea above.
How fair/ethical is your algorithm? (6 points)
Faster internet is a form of privilege. By choosing to favor some clients (those identified in the fourth question above) over others (those identified in the fifth question above), you have participated in assigning or reaffirming privilege for that group. Given our working definition of fairness [“fair institutions and policies can be understood as those that are not significantly responsive to arbitrary differences between individuals and that do not disadvantage those whom we already recognize as being disadvantaged” (253).], how fair/ethical is your algorithm design? Justify your answer.
Are laws and regulations enough? (7 points)
This question is not specific to your coding submission but related to the setup of the third problem overall. How effective are the threats of lawsuits and FCC fines (i.e. you need to talk about both) in keeping Internet service providers accountable? Justify your answer.
Submission
Submit all answers in one PDF
We recommend that you typeset your solution but we will accept scans of handwritten solution-- you have to make sure that the scan is legible. Your group needs to submit one PDF for the third reflection problem.
Note
If you do not have separated out answers for all the $7$ questions above, you will get a zero(0) irrespective of the "correctness" of your solution..
Preliminary Grading Guidelines
Below is a preliminary instantiation of the generic grading rubric above for (2nd to 6th questions) on Problem 3. (The Algorithm Idea part will be graded similarly to algorithm ideas in homework submissions.) In actual grading, we will use a grading rubric that expands on the preliminary grading rubric below.
- Level 0
- The authors did not answer all reflective questions; OR
- Answers may not be entirely relevant to the assignment.
- Level 1
- The authors answers all reflective questions, although the responses are underdeveloped; AND
- (For the 2nd, 3rd and 6th questions) The authors clearly understand the questions, but have not demonstrated much effort in thinking through the connection between questions and outside sources, i.e. the lawsuit, FCC fine, O’Neil and/or Gunn’s definition of fairness, are not referenced in responses. Answers may seem perfunctory.
- (For the 4th and 5th questions) Authors have identified un/favored users/stakeholders, but have either missed a stakeholder who should have been identified as either favored or unfavored OR have given little justification for their assessment.
- Level 2
- The authors answer all reflective questions thoroughly and thoughtfully; AND
- (For the 2nd, 3rd and 6th questions) Outside sources— i.e. the lawsuit, FCC fine, O’Neil and/or Gunn’s definition of fairness—are directly referenced in responses. Authors have clearly connected these sources to their own designs.
- (For the 4th and 5th questions) The authors clearly demonstrate their grasp of the questions and their algorithm’s potential to favor some users/stakeholders interests over others.
Below is a preliminary rubric for the last question. Note that the rubric has five levels (and there is no level 4)-- the interpretations of these levels are the same as the usual grading guidelines for non-programming questions.
- Level 0
- The authors did not answer the reflective question at all; OR
- Answers may not be entirely relevant to the assignment.
- Level 1
- Some parts of the answers are under-specified and/or miss the mark. Answers may seem perfunctory. This is true for both the lawsuit and FCC fine parts.
- Level 2
- For at least one of lawsuit or FCC fines, clearly states how effective lawsuits/FCC fines are in this context AND clearly justifies the claim on effectiveness (but does not state effectiveness of the other).
- Level 3
- For both lawsuit or FCC fines, clearly states how effective lawsuits/FCC fines are in this context but clearly justifies the claim on effectiveness for only one of lawsuit/FCC fines.
- Level 5
- For both lawsuit or FCC fines, clearly states how effective lawsuits/FCC fines are in this context AND clearly justifies the claim on effectiveness.
Grading scheme EXCEPTION!
For only this question (and one for Problem 5), we will follow the usual grading guidelines for non-programming questions. For all other problems, we will follow the three level grading scheme mentioned above.
PDF only please
If Autolab cannot display your file, (irrespective of the reason) then you will get a zero (0) on the entire question.
Autolab might not be able to display files in formats other than PDF (e.g. Word cannot be displayed). Note that Autolab will "accept" your submission even if you submit non-PDF file, so it is YOUR responsibility to make sure you submit in the correct format.
Also the file size has to be at most 3MB.
Problem 4 (15 points)
Your Task
Listed below are five questions. The first question is to present the algorithm idea of the code that you submitted for the fourth coding problem. For the rest of the questions, you group has to answer each question and justify your answers.
Coding problem four requires you to consider what a fair distribution of services means for a systemically underprivileged group. Since the U.S. Census Bureau's Annual Social and Economic Supplement to the Current Population Survey first started recording the issue in the 1960s, rural areas have had an average of 4.5 percentage points higher rates of poverty than urban areas. While this may seem like a small gap, the issue is compounded by reduced access (and therefore slower adoption) to new technologies. And, while we are assuming your clients have infinite tolerance and will not unsubscribe from ForProfitOnly
’s services given their monopoly in the area, Pew Research Center reported that in 2021, only 72% of rural Americans had access to broadband internet. So, in real life, there’s a chance they would choose to go without internet access.
Given our working definition of fairness [“fair institutions and policies can be understood as those that are not significantly responsive to arbitrary differences between individuals and that do not disadvantage those whom we already recognize as being disadvantaged” (253)], please answer the following questions about how designing for a disadvantaged group changed your design:
Algorithm Idea (2 points)
State the algorithm idea behind the code that you submitted for for the fourth coding problem. This would be similar to an usual algorithm idea submission in a homework (though it does not really have to longer than one paragraph)
Rural customers (3 points)
How did the presence of rural customers change your group's algorithm idea from the third coding problem to this problem? Specifically, which changes were motivated by the needs of rural stakeholders, and why did you choose those adjustments as opposed to others?
Which customers are favored? (3 points)
Which clients did the changes to the priorities values favor? Show how your answer follows from the algorithm idea above.
Which customers are not favored? (3 points)
Which clients did the changes to the priorities values not favor? Show how your answer follows from the algorithm idea above.
Is your algorithm fair/ethical? (4 points)
Given our working definition of fairness, how fair/ethical was your decision to privilege one group of customers (those identified in the third question above) over another (those identified in the fourth question above)? What could you or ForProfitOnly
have done to make access more fair/ethical? Justify your answer.
Submission
Submit all answers in one PDF
We recommend that you typeset your solution but we will accept scans of handwritten solution-- you have to make sure that the scan is legible. Your group needs to submit one PDF for the fourth reflection problem.
Note
If you do not have separated out answers for all the $5$ questions above, you will get a zero(0) irrespective of the "correctness" of your solution..
Preliminary Grading Guidelines
Below is a preliminary instantiation of the generic grading rubric above for (last four questions) on Problem 4. (The Algorithm Idea part will be graded similarly to algorithm ideas in homework submissions.) In actual grading, we will use a grading rubric that expands on the preliminary grading rubric below.
- Level 0
- The authors did not answer all reflective questions; OR
- Answers may not be entirely relevant to the assignment.
- Level 1
- The authors answers all reflective questions, although the responses are underdeveloped; AND
- (For the 2nd and 5th questions) The authors clearly understand the questions, but have not demonstrated much effort in thinking through the connection between questions and outside sources, i.e. rural customers, O’Neil and/or Gunn’s definition of fairness, are not referenced in responses. Answers may seem perfunctory.
- (For the 3rd and 4th questions) Authors have identified un/favored users/stakeholders, but have either missed a stakeholder who should have been identified as either favored or unfavored OR have given little justification for their assessment.
- Level 2
- The authors answer all reflective questions thoroughly and thoughtfully; AND
- (For the 2nd and 5th questions) Outside sources— i.e. rural customers, O’Neil and/or Gunn’s definition of fairness—are directly referenced in responses. Authors have clearly connected these sources to their own designs.
- (For the 3rd and 4th questions) The authors clearly demonstrate their grasp of the questions and their algorithm’s potential to favor some users/stakeholders interests over others.
PDF only please
If Autolab cannot display your file, (irrespective of the reason) then you will get a zero (0) on the entire question.
Autolab might not be able to display files in formats other than PDF (e.g. Word cannot be displayed). Note that Autolab will "accept" your submission even if you submit non-PDF file, so it is YOUR responsibility to make sure you submit in the correct format.
Also the file size has to be at most 3MB.
Problem 5 (40 points)
Your Task
Listed below are five questions. None of these questions are specifically related to code that you submitted for the fifth coding problem but are related to the setup of the fifth problem in general
A basic tenant for businesses is that they exist to maximize value for shareholders. Many companies, like ForProfitOnly
, will see value simply as revenue. Other companies, like EthicalInternet
, define value holistically and insist their stakeholders value some concepts more than revenue. Clearly, EthicalInternet
decided to value fairness. However, as we’ve said previously, there is no industry standard for fairness in algorithm design. Therefore, your final set of reflection questions challenges your group to come up with your own fairness constraint, and justify your alternative. You are not required to base your fairness constraint on our working definition of fairness, but you will need to justify your constraint. So, your group would be well served to decide on a definition of fairness before you proceed.
Alternate ethical/fairness constraint (15 points)
In the fifth problem, a fairness constraint was already given to you. But as we had mentioned then, that was just one notion of fairness. In this problem, your group should present a different fairness constraint under whichEthicalInternet
could have tried to maximize its revenue instead. Few clarifications:
- The notion of fairness should be primarily with respect to the clients. You can of course in addition include other stakeholders.
- The alternate fairness constraints should be feasible in that it should be reasonable enough to be implemented in today's world.
- If for the alternate fairness constraints,
EthicalInternet
needs to know more information about the customers, then explicitly state what the extra information is needed and why. Also justify why it is reasonable forEthicalInternet
to be able to collect such information from its customers. - The more precise your constraint, the more points your group will get. (When I say precise, mathematically precise is one way to go but as with proofs in this course, one can be precise even if one uses mostly English.)
Grading scheme EXCEPTION!
For only this question (and one for Problem 3 above), we will follow the usual grading guidelines for non-programming questions. For all other problems, we will follow the three level grading scheme mentioned above.
How is the alternate fairness constraint better? (5 points)
How is your alternate fairness constraint better (as a fairness metric/constraint) than the constraint used in the fifth problem? Justify your answer.
Would you change jobs? (5 points)
Given the presence of monopolies in technical industries, you might find yourself in a similar situation to your rural customers and not have other employer options. However, assuming you were working for ForProfitOnly
and you got an offer from EthicalInternet
for the same salary, would you switch jobs? Please explain why or why not.
What if the salaries were different? (5 points)
Based on how you answered the previous question, please answer the appropriate one below:
- If you answered YES to the question above, would you answer change if moving to
EthicalInternet
meant a $10\%$ decrease in salary? Please explain your decision. - If you answered NO to the question above, would you answer change if moving to
EthicalInternet
meant a $10\%$ increase in salary? Please explain your decision.
Impact of individual engineers (10 points)
Regardless of how you answered the previous two questions, answer both of these questions:
- What do you imagine would be the impact of individual software engineers refusing to work for deceptive businesses like
ForProfitOnly
? - Would individual software engineers be any more or less effective than current legal policies in promoting ethical algorithmic design and deployment? Why or why not?
Submission
Submit all answers in one PDF
We recommend that you typeset your solution but we will accept scans of handwritten solution-- you have to make sure that the scan is legible. Your group needs to submit one PDF for the fifth reflection problem.
Note
If you do not have separated out answers for all the $4$ questions above, you will get a zero(0) irrespective of the "correctness" of your solution..
Preliminary Grading Guidelines
Below is a preliminary instantiation of the generic grading rubric above for (the last four questions) on Problem 5. (As mentioned above the first question we will follow the usual grading guidelines for non-programming questions.) In actual grading, we will use a grading rubric that expands on the preliminary grading rubric below.
- Level 0
- The authors did not answer all reflective questions; OR
- Answers may not be entirely relevant to the assignment.
- Level 1
- The authors answers all reflective questions, although the responses are underdeveloped; AND
- (For the 2nd question) The authors’ alternative fairness constraint is clearly distinguished from the original, but may have only a tenuous connection to our working definition of fairness.
- (For the 3rd and 4th questions) Authors have answered whether or not they would switch jobs, but the justification may be perfunctory.
- (For the 5th question) Authors demonstrate little understanding of how individual employment choices relate to the larger ethical issue.
- Level 2
- The authors answer all reflective questions thoroughly and thoughtfully; AND
- (For the 2nd question) The authors have clearly developed their own fairness constraint and explicitly justified how this constraint connects to their own understanding of fairness.
- (For the 3rd and 4th questions) Authors have clearly rationalized their choice(s) in regards to employment with references to external readings (FCC, OAG, O’Neil and Gunn, etc.)
- (For the 5th question) Authors demonstrate clear understanding of how individual employment choices relate to the larger ethical issue.
PDF only please
If Autolab cannot display your file, (irrespective of the reason) then you will get a zero (0) on the entire question.
Autolab might not be able to display files in formats other than PDF (e.g. Word cannot be displayed). Note that Autolab will "accept" your submission even if you submit non-PDF file, so it is YOUR responsibility to make sure you submit in the correct format.
Also the file size has to be at most 3MB.