raymondEDS commited on
Commit
b276f60
Β·
1 Parent(s): 840101a

adding week 1 homework.

Browse files
Files changed (3) hide show
  1. Design Docs/ToDo +2 -1
  2. src/views/dashboard.py +5 -45
  3. src/views/week1.py +150 -8
Design Docs/ToDo CHANGED
@@ -1,3 +1,4 @@
1
- Make sure all the utilites are set up correctly.
 
2
 
3
 
 
1
+ Make sure all the utilites are set up correctly. I want everything to be done in
2
+ a way where we just call the utility.
3
 
4
 
src/views/dashboard.py CHANGED
@@ -9,29 +9,10 @@ def show_dashboard():
9
  st.markdown(f"### Welcome back, {st.session_state.name}!")
10
  st.markdown("This is your central hub for all debate class activities and materials.")
11
 
12
- # Course overview
13
- col1, col2, col3 = st.columns(3)
14
-
15
- with col1:
16
- st.metric(
17
- label="Current Week",
18
- value="Week 1",
19
- delta="Just Started"
20
- )
21
-
22
- with col2:
23
- st.metric(
24
- label="Assignments Due",
25
- value="2",
26
- delta="This Week"
27
- )
28
-
29
- with col3:
30
- st.metric(
31
- label="Class Progress",
32
- value="25%",
33
- delta="+25%"
34
- )
35
 
36
  st.markdown("---")
37
 
@@ -46,25 +27,4 @@ def show_dashboard():
46
  """)
47
 
48
  if st.button("Go to Week 1 Content", type="primary", key="dashboard_week1_button"):
49
- st.rerun()
50
-
51
- st.markdown("---")
52
-
53
- # Recent announcements
54
- st.subheader("πŸ“’ Recent Announcements")
55
- announcements = [
56
- {
57
- "title": "Welcome to Debate Class!",
58
- "date": "2024-01-15",
59
- "content": "Welcome everyone! We're excited to begin our journey into the world of competitive debate."
60
- },
61
- {
62
- "title": "First Assignment Posted",
63
- "date": "2024-01-16",
64
- "content": "Your first assignment is now available in the Assignments section."
65
- }
66
- ]
67
-
68
- for i, announcement in enumerate(announcements):
69
- with st.expander(f"{announcement['title']} - {announcement['date']}", key=f"dashboard_announcement_{i}"):
70
- st.write(announcement['content'])
 
9
  st.markdown(f"### Welcome back, {st.session_state.name}!")
10
  st.markdown("This is your central hub for all debate class activities and materials.")
11
 
12
+ # Current week information
13
+ st.subheader("πŸ“… Current Week")
14
+ st.markdown("**Week 1: Introduction to Debate**")
15
+ st.markdown("We are currently in Week 1 of the debate course.")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
 
17
  st.markdown("---")
18
 
 
27
  """)
28
 
29
  if st.button("Go to Week 1 Content", type="primary", key="dashboard_week1_button"):
30
+ st.rerun()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/views/week1.py CHANGED
@@ -111,10 +111,15 @@ def show_week1_content():
111
  - **Identify** the key elements of effective debate delivery: body language, setting adaptation, and script
112
  - **Explain** how speakers can adapt their presentation style to different debate environments
113
  - **Understand** that public speaking skills in debate can be practiced and improved over time
 
 
 
 
 
114
  """)
115
 
116
  # Content tabs
117
- tab1, tab2, tab3, tab4 = st.tabs(["🎯 Opening Activity", "πŸ“– Lecture Materials", "πŸ“ Activities", "πŸ“‹ Quiz"])
118
 
119
  with tab1:
120
  st.subheader("🎯 Opening Activity: The Group Project Dilemma")
@@ -346,12 +351,12 @@ def show_week1_content():
346
  st.markdown("**Step 4: Explain Why It Matters**")
347
  st.markdown("*So what? Why should anyone care?*")
348
  st.markdown("**Impact = Why your argument is important**")
349
- st.markdown("*\"Better academic performance leads to improved college opportunities and future career success for our entire student body.\"*")
350
  st.markdown("*This answers: \"Why does this matter in the big picture?\"*")
351
 
352
  st.markdown("### Your Complete Argument")
353
  st.markdown("""
354
- *\"Schools should start later at 8:45 AM instead of 8:00 AM **because** students will be more alert and focused in class. The American Academy of Pediatrics states that 'adolescents who get enough sleep have a reduced risk of being overweight, suffering depression, and performing poorly in school.' Better academic performance leads to improved college opportunities and future career success for our entire student body.\"*
355
 
356
  **Remember:** Complete arguments need all four elements working together.
357
  """)
@@ -447,7 +452,6 @@ def show_week1_content():
447
  3. Explain why your resolution creates a clear stasis point
448
  4. Submit your resolutions and explanations
449
 
450
- **Due Date**: End of Week 1
451
 
452
  ---
453
 
@@ -463,7 +467,6 @@ def show_week1_content():
463
  5. Explain the impact - why this matters
464
  6. Submit your complete argument
465
 
466
- **Due Date**: End of Week 1
467
 
468
  ---
469
 
@@ -478,7 +481,6 @@ def show_week1_content():
478
  4. Record your speech and submit the video/audio
479
  5. Reflect on what you learned about the format
480
 
481
- **Due Date**: End of Week 1
482
 
483
  ---
484
 
@@ -492,7 +494,6 @@ def show_week1_content():
492
  3. Identify what makes evidence credible and authoritative
493
  4. Submit your analysis with examples
494
 
495
- **Due Date**: End of Week 1
496
  """)
497
 
498
  # Activity submission section
@@ -843,4 +844,145 @@ def show_week1_content():
843
  else:
844
  st.error("❌ Failed to submit reflection. Please try again.")
845
  else:
846
- st.warning("Please write your reflection before submitting.")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
111
  - **Identify** the key elements of effective debate delivery: body language, setting adaptation, and script
112
  - **Explain** how speakers can adapt their presentation style to different debate environments
113
  - **Understand** that public speaking skills in debate can be practiced and improved over time
114
+ **Choose** a resolution for your class debate.
115
+ - **RESOLVED: States ought to eliminate their nuclear arsenals.
116
+ - **RESOLVED: The United States ought to adopt a wealth tax.
117
+ - **RESOLVED: In the United States, national service ought to be mandatory.
118
+ - **RESOLVED: The United States ought to guarantee the right to housing.
119
  """)
120
 
121
  # Content tabs
122
+ tab1, tab2, tab3, tab4, tab5 = st.tabs(["🎯 Opening Activity", "πŸ“– Lecture Materials", "πŸ“ Activities", "πŸ“‹ Quiz", "πŸ“š Homework"])
123
 
124
  with tab1:
125
  st.subheader("🎯 Opening Activity: The Group Project Dilemma")
 
351
  st.markdown("**Step 4: Explain Why It Matters**")
352
  st.markdown("*So what? Why should anyone care?*")
353
  st.markdown("**Impact = Why your argument is important**")
354
+ st.markdown("*Better academic performance leads to improved college opportunities and future career success for our entire student body.*")
355
  st.markdown("*This answers: \"Why does this matter in the big picture?\"*")
356
 
357
  st.markdown("### Your Complete Argument")
358
  st.markdown("""
359
+ *Schools should start later at 8:45 AM instead of 8:00 AM **because** students will be more alert and focused in class. The American Academy of Pediatrics states that 'adolescents who get enough sleep have a reduced risk of being overweight, suffering depression, and performing poorly in school.' Better academic performance leads to improved college opportunities and future career success for our entire student body.*
360
 
361
  **Remember:** Complete arguments need all four elements working together.
362
  """)
 
452
  3. Explain why your resolution creates a clear stasis point
453
  4. Submit your resolutions and explanations
454
 
 
455
 
456
  ---
457
 
 
467
  5. Explain the impact - why this matters
468
  6. Submit your complete argument
469
 
 
470
 
471
  ---
472
 
 
481
  4. Record your speech and submit the video/audio
482
  5. Reflect on what you learned about the format
483
 
 
484
 
485
  ---
486
 
 
494
  3. Identify what makes evidence credible and authoritative
495
  4. Submit your analysis with examples
496
 
 
497
  """)
498
 
499
  # Activity submission section
 
844
  else:
845
  st.error("❌ Failed to submit reflection. Please try again.")
846
  else:
847
+ st.warning("Please write your reflection before submitting.")
848
+
849
+ with tab5:
850
+ st.subheader("πŸ“š Homework Assignment")
851
+
852
+ st.markdown("""
853
+ ## Resolution Justification Assignment
854
+
855
+ **Due Date:** End of Week 1
856
+
857
+ **Objective:** Practice analyzing debate resolutions and justifying their suitability for formal debate.
858
+
859
+ **Instructions:**
860
+
861
+ ### Step 1: Choose Your Resolution
862
+
863
+ Select ONE of the following resolutions for your analysis:
864
+
865
+ - **RESOLVED: States ought to eliminate their nuclear arsenals.**
866
+ - **RESOLVED: The United States ought to adopt a wealth tax.**
867
+ - **RESOLVED: In the United States, national service ought to be mandatory.**
868
+ - **RESOLVED: The United States ought to guarantee the right to housing.**
869
+
870
+ ### Step 2: Research and Analysis
871
+
872
+ For your chosen resolution, you must:
873
+
874
+ 1. **Find 1 research article** that demonstrates why there will be enough arguments to justify both sides of the resolution
875
+ 2. **Write a justification** explaining why this resolution is good for debate
876
+ 3. **Submit your work** via Google Docs link
877
+
878
+ ### Step 3: Your Justification Must Include
879
+
880
+ **A. Resolution Analysis (2-3 paragraphs):**
881
+ - Explain what the resolution means
882
+ - Identify the key terms that need definition
883
+ - Describe the scope of the debate
884
+
885
+ **B. Research Article Summary (1-2 paragraphs):**
886
+ - Cite your research article (author, title, publication, date)
887
+ - Summarize the main arguments presented
888
+ - Explain how this article shows there are strong arguments for BOTH sides
889
+
890
+ **C. Debate Suitability (2-3 paragraphs):**
891
+ - Explain why this resolution creates a good "stasis point"
892
+ - Describe the types of arguments each side could make
893
+ - Discuss why this topic is appropriate for formal debate
894
+
895
+ ### Step 4: Google Docs Submission Instructions
896
+
897
+ **How to create a public Google Docs link:**
898
+
899
+ 1. **Create your document** in Google Docs
900
+ 2. **Click "Share"** in the top right corner
901
+ 3. **Click "Change to anyone with the link"**
902
+ 4. **Set permission to "Viewer"** (instructor only needs to view)
903
+ 5. **Copy the link** and paste it in the submission form below
904
+
905
+ **Important:** Make sure the link is set to "Anyone with the link can view" so your instructor can access it.
906
+
907
+ **Document Format:**
908
+ - Use clear headings for each section
909
+ - Include proper citations for your research article
910
+ - Aim for 2-3 pages total
911
+ - Use professional writing style
912
+ """)
913
+
914
+ # Check for existing homework submissions
915
+ existing_homework = get_existing_submission(username, 1, 'homework')
916
+ all_homework = get_all_submissions(username, 1, 'homework')
917
+
918
+ if existing_homework:
919
+ st.success(f"βœ… You have submitted {len(all_homework)} homework assignment(s).")
920
+
921
+ # Show submission history
922
+ if len(all_homework) > 1:
923
+ with st.expander(f"πŸ“š View All {len(all_homework)} Submissions"):
924
+ for i, submission in enumerate(all_homework, 1):
925
+ st.markdown(f"**Submission {i}** - {submission['submitted_at']}")
926
+ homework_data = submission['submission_data']
927
+ st.markdown(f"**Chosen Resolution:** {homework_data['questions'][0]['student_answer']}")
928
+ st.markdown(f"**Google Docs Link:** {homework_data['questions'][1]['student_answer']}")
929
+ st.markdown("---")
930
+
931
+ st.info("**Your most recent submission:**")
932
+ homework_data = existing_homework['submission_data']
933
+ st.markdown(f"**Chosen Resolution:** {homework_data['questions'][0]['student_answer']}")
934
+ st.markdown(f"**Google Docs Link:** {homework_data['questions'][1]['student_answer']}")
935
+
936
+ # Always show the submission form
937
+ st.markdown("---")
938
+ st.markdown("**Submit your homework assignment:**")
939
+
940
+ # Resolution selection
941
+ resolution_choice = st.selectbox(
942
+ "Choose your resolution for analysis:",
943
+ [
944
+ "RESOLVED: States ought to eliminate their nuclear arsenals.",
945
+ "RESOLVED: The United States ought to adopt a wealth tax.",
946
+ "RESOLVED: In the United States, national service ought to be mandatory.",
947
+ "RESOLVED: The United States ought to guarantee the right to housing."
948
+ ],
949
+ key="homework_resolution"
950
+ )
951
+
952
+ # Google Docs link
953
+ google_docs_link = st.text_input(
954
+ "Paste your Google Docs link here:",
955
+ placeholder="https://docs.google.com/document/d/...",
956
+ key="homework_link"
957
+ )
958
+
959
+ if st.button("Submit Homework Assignment"):
960
+ if resolution_choice and google_docs_link.strip():
961
+ # Validate Google Docs link format
962
+ if "docs.google.com" in google_docs_link:
963
+ submission_data = {
964
+ "questions": [
965
+ {
966
+ "id": "resolution_choice",
967
+ "type": "selectbox",
968
+ "question": "Chosen Resolution",
969
+ "student_answer": resolution_choice
970
+ },
971
+ {
972
+ "id": "google_docs_link",
973
+ "type": "text_input",
974
+ "question": "Google Docs Link",
975
+ "student_answer": google_docs_link
976
+ }
977
+ ]
978
+ }
979
+
980
+ if save_submission(username, 1, 'homework', submission_data):
981
+ st.success("βœ… Homework assignment submitted successfully!")
982
+ st.rerun()
983
+ else:
984
+ st.error("❌ Failed to submit homework. Please try again.")
985
+ else:
986
+ st.error("❌ Please provide a valid Google Docs link.")
987
+ else:
988
+ st.warning("Please select a resolution and provide your Google Docs link before submitting.")