← Back to the Introduction to Computer Science outline The Course Maker
← Introduction to Computer Science outline
Week 11 · Discussion (adaptive)

Week 11 Discussion — Text at Scale: Tidy It, Count It, or Leave It Alone?

Introduction to Computer Science Free sample edition
Adaptive discussion. This is the published, graded discussion: the student works it through with an approved chatbot and submits the chat link with the required summary. Its traditional alternative (no AI) ships unpublished beside it: read the traditional discussion.

Hook

A sign-up sheet full of Yes, yes, and YES looks like one answer to a person, and a few lines of Python can make it one answer to a program too. This week you learned that a string method hands back a new string and never changes the old one, that split makes a list and join makes a string, and that normalizing with strip and lower turns " Yes " into yes, so the comparison with "yes" goes from False to True. The same few lines run as easily over a pile of messages as over one.

Your driving question — choose Option A or Option B; they carry the same weight and the same rubric, and you say which you picked.

Option A: A word-count program built from split and the counting idiom can tally every word in a group chat, a class forum, or a workplace channel in seconds. Pick one such setting from your own life, major, or workplace and take a position on whether, and under what limits, the group should run that kind of program over messages its members wrote. Use this week's ideas (split, string method, normalize, count) and say what someone who weighs privacy and usefulness differently from you would argue.

Option B: Normalizing with strip and lower makes typed text match when the differences do not matter, but some differences do matter: a capital letter in a name, the spacing in an address, or the exact characters of a password. Pick one kind of text a program you know collects and take a position on when that program should normalize it before comparing and when it should keep the text exactly as typed. Use this week's ideas (normalize, whitespace, string method, the forgot-to-reassign bug) and say what someone who weighs consistency and fairness differently from you would argue.

There is no single right answer. People who agree on every fact about what split, lower, and count hand back still disagree about when a program should run them over other people's words, because those questions rest on judgment about people as well as on the facts about Python.

Expectations

Activity format: a multi-exchange dialogue or an equivalent structured written exchange, followed by one discussion-board post. Plan on about 45 minutes for either route, and post by the due date your instructor sets in Canvas.

There are two ways to complete this discussion. They are worth the same 10 points and scored by the same rubric. Pick either one.

Route A — the AI dialogue (the default). Hold a real conversation about the driving question with your own chatbot, then post what it produces:

  1. Open any approved chatbot in a new conversation.
  2. Copy the entire prompt box below and paste it as your first message.
  3. Have the conversation. It will ask you questions and push back; it will not write your post for you and will not stop after one word from you.
  4. Post the chatbot's summary report plus the conversation's share link to the Week 11 discussion board. That post is your entire submission. You may post the summary as text, or record it as audio or video with a transcript attached; both forms are scored by the same rubric.

No replies to classmates are required.

Route B — the written route. See Equivalent route (no AI required) below.

Integrity note. Whichever route you take, the thinking and the words you post are your own. If you mention what a string method hands back, say that you ran it; do not rely on a chatbot's prediction alone. Never paste real messages written by other people into a chatbot or into your post; describe them in your own words instead.

Discussion Partner Prompt

ROLE: You are my discussion partner for an introductory computer science course
taught in Python 3. Your job is to draw out and challenge MY thinking about the
question below. You will never write my post for me and never hand me a
conclusion - you ask questions that make me reason it through. Never invent a
statistic, a study, a law, or a quotation. Never tell me what a string method
hands back; if it matters, ask me to run it and tell you what I saw. On any
question of privacy or fairness, present the strongest case on each side and
pick no side yourself. Do not ask me to paste real messages written by other
people.

THE QUESTION I AM EXPLORING (two options of equal weight - ask which one I choose first):
Option A: A word-count program built from split and the counting idiom can
tally every word in a group chat, a class forum, or a workplace channel in
seconds. I pick one such setting from my own life, major, or workplace and
take a position on whether, and under what limits, the group should run that
kind of program over messages its members wrote. I use this week's ideas
(split, string method, normalize, count) and say what someone who weighs
privacy and usefulness differently from me would argue.
Option B: Normalizing with strip and lower makes typed text match when the
differences do not matter, but some differences do matter: a capital letter
in a name, the spacing in an address, or the exact characters of a password.
I pick one kind of text a program I know collects and take a position on when
that program should normalize it before comparing and when it should keep the
text exactly as typed. I use this week's ideas (normalize, whitespace, string
method, the forgot-to-reassign bug) and say what someone who weighs
consistency and fairness differently from me would argue.

REFLECTION TARGETS (steer toward these; never read this list aloud to me):
- whether I name a specific setting or kind of text, not only a general
  feeling about privacy or data
- whether I describe what the program actually does with string methods,
  such as split making a list or lower handing back a new string
- whether I keep normalizing (making text match on purpose) distinct from
  changing the original text, which a string method never does
- whether I name who gains and who could lose from my position
- whether I can state the strongest case for a view I do not hold, and name
  something I would run to check a factual part of my argument

DIALOGUE RULES: greet me warmly and ask my first name before your first content
question. If I decline or give no name, call me "there" and continue without
pressure. If you still do not know my name when the summary is due, ask once more;
if I decline again, use "Discussion participant." Never invent a name. Ask ONE
question per message, then wait. Build on my exact words without praising agreement
or calling every reply "great." Probe unsupported claims and introduce the
strongest fair counterpoint. Praise only a specific, earned move I actually made,
such as revising a claim or answering the counterpoint. Never accept a one-word
reply - ask again, differently. Never lecture. Every message you send before the
summary ends with a question.

EXIT CONDITION: continue until this exact boolean is true — at least five substantive exchanges AND the student has stated a position AND provided at least one reason OR example AND engaged with one fair counterpoint, stopping only after whichever threshold happens LAST. A reason alone or an example alone can satisfy the support branch; do not require both, and do not require that I "answered" the counterpoint. A greeting, my name, or a one-word reply is not a substantive exchange.

THEN produce a summary report using exactly these eight labelled fields in this
order, drawn only from what I actually said. If I never supplied a field, write
"Not supplied" rather than inventing it:
  1. STUDENT NAME
  2. POSITION
  3. REASON
  4. EXAMPLE
  5. COURSE CONCEPTS
  6. COUNTERPOINT
  7. RESPONSE TO THE COUNTERPOINT
  8. OPEN QUESTION OR NEXT CHECK
Do not mention an initial post or replies to peers or classmates.
REQUIRED CLOSING — perform these final two instructions exactly:
Then say, verbatim: "Copy this summary AND your share link to this chat, and post both to the Week 11 discussion board — that completes the assignment."
Then END with one genuine earned-praise sentence that names a real move the student made.

Equivalent route (no AI required)

You never have to create an account with a chatbot company to earn full credit in this course. This route assesses the same objectives as the AI dialogue — processing text with string methods, explaining what split, lower, strip, and count hand back, and checking a claim about text by running it — against the same driving question and the same rubric below, for the same 10 points. Choosing it costs you nothing, and you do not have to tell me why you chose it.

What you do. Write a structured written exchange with yourself — the same back-and-forth the dialogue would have produced, on paper:

  1. Your position (roughly 150 words). Answer Option A or Option B. For Option A, name the setting, describe in words the program that would split the messages and tally the words, and say whether and under what limits the group should run it. For Option B, name the kind of text, say whether the program should normalize it with strip and lower or keep it exactly as typed, and explain why. Use this week's terms (string method, split, normalize, whitespace, count) correctly.
  2. The strongest objection (roughly 100 words). Write the best argument against your own position that you can — for example, the case that a word tally helps a group see what it actually talks about, or the case that keeping text exactly as typed treats every user's choices with respect. Argue it honestly; a weak objection you knock over earns no credit.
  3. Your response to it (roughly 100 words). Say what you still hold, what changed, and which part of the disagreement is about what Python does and which is about judgment.
  4. One thing you would still check (one or two sentences). What would you run, such as a short normalize program on two typed replies, or split on a sentence of your own, to settle the factual part of your argument?

Effort. Roughly 350–400 words of your own writing, comparable to the time the AI dialogue takes — about forty-five minutes including the thinking.

What you submit. Post those four parts, under those four labels, as your Week 11 discussion post. That post is your entire submission; this route has no share link.

Participation rubric

This discussion is worth 10 points. The same three criteria score both routes.

How the 10 points of this discussion are earned
Criterion Full credit Partial credit No credit
Depth of reasoning shown (4 pts) A specific setting or kind of text, a description of what the program does with it, a clear position, and a reason for it A setting is present, but the program stays vague, or the position is asserted without a reason Missing, off-topic, or no reasoning about running string methods over people's text
Genuine engagement with a counterpoint (3 pts) The strongest opposing case is stated fairly and then answered or partly conceded, with the line between facts about Python and judgment drawn An opposing view is named but brushed aside, or answered without engaging it No counterpoint appears
Use of the week's course concepts (3 pts) Uses string method, split, normalize, whitespace, and count precisely, with every claim about what a method hands back matching a run Uses a term loosely, or says a method changes the original string No course terms, or used incorrectly

Built with The Course Maker · samples.thecoursemaker.com