Skip to content

Commit 4c645f8

Browse files
committed
update portfolio
1 parent 716b75e commit 4c645f8

File tree

3 files changed

+142
-43
lines changed

3 files changed

+142
-43
lines changed

cac-cv-converter.py

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import sys
2+
from bs4 import BeautifulSoup
3+
from markdownify import markdownify as md
4+
5+
def main():
6+
if len(sys.argv) != 2:
7+
print("Usage: python script.py input.html")
8+
sys.exit(1)
9+
10+
input_file = sys.argv[1]
11+
12+
# Read the HTML content from the file
13+
with open(input_file, 'r', encoding='utf-8') as f:
14+
html_content = f.read()
15+
16+
# Parse the HTML content
17+
soup = BeautifulSoup(html_content, 'html.parser')
18+
19+
# Attempt to extract the main content
20+
# Adjust the selectors based on the actual HTML structure
21+
main_content = soup.find('div', class_='entry-content')
22+
if not main_content:
23+
main_content = soup.find('div', id='content')
24+
if not main_content:
25+
main_content = soup.body # Fallback to entire body if specific div not found
26+
27+
if not main_content:
28+
print("Main content not found.")
29+
sys.exit(1)
30+
31+
# Convert the HTML content to Markdown
32+
markdown_content = md(str(main_content))
33+
34+
# Save the Markdown content to a file
35+
output_file = input_file.rsplit('.', 1)[0] + '.md'
36+
with open(output_file, 'w', encoding='utf-8') as f:
37+
f.write(markdown_content)
38+
39+
print(f"Markdown content saved to {output_file}")
40+
41+
if __name__ == '__main__':
42+
main()``

convert-to-markdown.py

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import sys
2+
from bs4 import BeautifulSoup
3+
from markdownify import markdownify as md
4+
5+
def main():
6+
if len(sys.argv) != 2:
7+
print("Usage: python script.py input.html")
8+
sys.exit(1)
9+
10+
input_file = sys.argv[1]
11+
12+
# Read the HTML content from the file
13+
with open(input_file, 'r', encoding='utf-8') as f:
14+
html_content = f.read()
15+
16+
# Parse the HTML content
17+
soup = BeautifulSoup(html_content, 'html.parser')
18+
19+
# Attempt to extract the main content
20+
# Adjust the selectors based on the actual HTML structure
21+
main_content = soup.find('div', class_='entry-content')
22+
if not main_content:
23+
main_content = soup.find('div', id='content')
24+
if not main_content:
25+
main_content = soup.body # Fallback to entire body if specific div not found
26+
27+
if not main_content:
28+
print("Main content not found.")
29+
sys.exit(1)
30+
31+
# Convert the HTML content to Markdown
32+
markdown_content = md(str(main_content))
33+
34+
# Save the Markdown content to a file
35+
output_file = input_file.rsplit('.', 1)[0] + '.md'
36+
with open(output_file, 'w', encoding='utf-8') as f:
37+
f.write(markdown_content)
38+
39+
print(f"Markdown content saved to {output_file}")
40+
41+
if __name__ == '__main__':
42+
main()

portfolio.md

Lines changed: 58 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -6,71 +6,86 @@ nav_order: 04
66
# Social Coding Portfolio
77

88
### Project Description
9-
For the final project in this course, you will create and maintain a social coding portfolio on GitHub that will serve as both a public submission portal for your coursework and a professional showcase of your progress in data science. This portfolio will house your responses to five programming activities, each accompanied by a reflective account of your learning process, and will culminate in a final semester reflection.You will also take part in a lightning talk that highlights key aspects of your technical and critical learnings throughout the course.
10-
11-
### Components
12-
13-
1. **Programming Activities**
14-
- **Jupyter Notebook:** For each of the five programming activities, you will create a complete, well-documented notebook (`.ipynb`) that demonstrates your approach to the assigned problem. Your notebook should include code, visualizations, and explanatory markdown cells that clearly communicate your process and results.
15-
- **Reflective Account:** Alongside each notebook, you will write a one-page reflection in markdown (`.md`) that details your learning process, the challenges you encountered, and the insights you gained during the activity. These reflections will be committed to your social coding portfolio and later featured on the course website as part of a gallery of student reflections.
16-
17-
2. **Final Reflection**
18-
- **Purpose:** Your final reflection will be an analytical narrative that draws connections between the topics, methods, and datasets we’ve explored throughout the semester. It should reflect on how the knowledge and skills you’ve developed in data science apply to broader contexts, including your personal life, future studies, or professional ambitions.
19-
- **Guidelines**
20-
- **Length:** Approximately 2 double-spaced pages.
21-
- **Formatting:** Use Times New Roman, 12-point font, or Arial/Helvetica, 11-point font. Adhere to MLA citation format for any sources referenced in your reflection.
22-
- **Content:** Your reflection should go beyond a mere recount of your activities. It should integrate your experiences with analytical insights, demonstrating how your work in this course intersects with broader academic and personal contexts. You may include examples from your lived experiences, current events, or relevant media to enrich your reflection.
23-
- **Submission Format:** Save your reflection as a markdown file (`.md`) and commit it to your social coding portfolio in the `Final-Reflection` folder.
24-
- **Public Sharing:** Ensure that your portfolio remains accessible to the course community by keeping your GitHub repository public. You may use a pseudonym or nickname as your GitHub username to protect your privacy while participating in the public sharing of your work.
25-
26-
3. **Lightning Talk**
27-
* **Purpose:** The lightning talk is a brief, focused presentation where you will highlight key aspects of your work, including challenges, insights, and reflections on how the course has influenced your understanding of data science.
28-
* **Format**: Your talk should be concise, engaging, and no longer than 5 minutes. You may use slides, live demonstrations, or other visual aids to enhance your presentation.
29-
* **Presentation Dates:**:
30-
* Group A: 12/10 (Tue)
31-
* Group B: 12/12 (Thu)
9+
For the final project in this course, you will create and maintain a social coding portfolio on GitHub that will serve as both a public submission portal for your coursework and a professional showcase of your progress in data science. This portfolio will house your responses to five programming activities, each accompanied by a reflective account of your learning process, and will culminate in a final semester reflection.
10+
11+
## Portfolio Components
12+
13+
### **Programming Activities**
14+
15+
- **Jupyter Notebook:** For each of the five programming activities, you will create a complete, well-documented notebook (`.ipynb`) that demonstrates your approach to the assigned problem. Your notebook should include code, visualizations, and explanatory markdown cells that clearly communicate your process and results.
16+
- **Reflective Account:** Alongside each notebook, you will write a one-page reflection in markdown (`.md`) that details your learning process, the challenges you encountered, and the insights you gained during the activity. These reflections will be committed to your social coding portfolio and later featured on the course website as part of a gallery of student reflections.
17+
18+
### **Final Reflection**
19+
20+
- **Purpose:** Your final reflection will be an analytical narrative that draws connections between the topics, methods, and datasets we’ve explored throughout the semester. It should reflect on how the knowledge and skills you’ve developed in data science apply to broader contexts, including your personal life, future studies, or professional ambitions.
21+
- **Guidelines**
22+
- **Length:** Approximately 2 double-spaced pages.
23+
- **Formatting:** Use Times New Roman, 12-point font, or Arial/Helvetica, 11-point font. Adhere to MLA citation format for any sources referenced in your reflection.
24+
- **Content:** Your reflection should go beyond a mere recount of your activities. It should integrate your experiences with analytical insights and demonstrate how your work in this course intersects with broader academic and personal contexts. You may include examples from your lived experiences, current events, or relevant media to enrich your reflection.
25+
- **Submission Format:** Save your reflection as a markdown file (`.md`) and commit it to your social coding portfolio in the `Final-Reflection` folder.
26+
- **Public Sharing:** Ensure that your portfolio remains accessible to the course community by keeping your GitHub repository public. You may use a pseudonym or nickname as your GitHub username to protect your privacy while participating in the public sharing of your work.
27+
28+
3229

3330
### GitHub Project Structure
3431

3532
- **Repository Structure**
36-
- Create a new GitHub repository at the start of the semester. This will be your social coding portfolio.
37-
- Name the repository following the convention: `[username]/CCNY-Data-Science-Portfolio`.
33+
34+
- Create a new GitHub repository at the start of the semester to serve as your class portfolio.
35+
- Name the repository following the convention: `[username]/CCNY-Coding-Portfolio`.
3836
- Ensure that your repository is set to public access to allow for peer review and course-wide visibility. Remember, you may use a pseudonym or nickname if you wish to maintain anonymity.
39-
40-
- **Activity Folders:**
41-
- For each programming activity, create a separate folder named `Activity-X`, where `X` is the number of the activity (e.g., `Activity-1`).
42-
- Each folder should contain:
43-
- `activity-X.ipynb`: Your Jupyter notebook for the activity.
44-
- `activity-X-reflection.md`: Your reflective account of the activity in markdown format.
45-
37+
38+
- **Initiate with a README.md file**
39+
40+
- Briefly describe the purpose of the repository
41+
- Provide a summary of the course portfolio contents
42+
- Embed links to each activity folder as they are adde
43+
44+
- **Notebook and Reflection Folders**
45+
46+
* Organize your repository with two main folders: Notebooks and Reflections
47+
* In the **Notebooks** folder, create a file for each activity, named activity-X.ipynb, where X is the activity number (e.g., activity-1.ipynb)
48+
* In the **Reflections** folder, create a corresponding markdown file for each activity, named activity-X-reflection.md, to document your reflections and insights on that activity.
49+
4650
- **Final Reflection Folder:**
51+
4752
- Create a folder named `Final-Reflection`.
4853
- This folder should include:
4954
- `final-reflection.md`: A cumulative reflection on the broader arc of your learning experience in the course, considering how your understanding of data science, cultural analytics, and/or the digital humanities has grown since the onset of the term.
55+
56+
5057

5158
### Submission Guidelines
5259

5360
- **Commit and Push:** After completing each activity, commit your files to your GitHub repository and (optionally) push them to the remote repository
54-
- **Portfolio Updates:** Regularly update your portfolio as you complete each activity. The final portfolio submission will be due at the end of the semester, but periodic checks will be made to ensure timely progress.
55-
- **Showcase Integration:** Selected reflections from your portfolio will be featured on the course website's blog section, highlighting your engagement with the course material.
61+
- **Portfolio Updates:** Update your portfolio as you complete each activity. The final portfolio submission will be due at the end of the semester, but periodic checks will be made to ensure timely progress.
62+
- **Showcase Integration:** Selected reflections from your portfolio will be optionally featured on the course website's blog section to showcase your hard work and accomplishments over the semester.
63+
64+
5665

5766
### Grading Criteria
5867
Your social coding portfolio will be assessed based on:
5968

6069
- **Completeness:** Submission of all required components for each activity and the final reflection.
61-
- **Quality of Work:** The accuracy, clarity, and depth of your Jupyter notebook solutions.
62-
- **Reflective Insight:** The thoughtfulness and relevance of your markdown reflections.
63-
- **Organization:** The clarity and accessibility of your portfolio's structure.
64-
- **Critical Analysis:** Especially in your final reflection, demonstrating how well you connect course content to broader contexts.
70+
- **Quality of Work:** The accuracy, effort, and thoroughness of your Jupyter notebook responses.
71+
- **Reflective Log:** Successful submission of a written reflection for each of your programming activities.
72+
- **Organization:** The clarity, structure, and navigability of your portfolio's file structure.
73+
- **Critical Analysis:** Especially in your final reflection, demonstrating engagement with the themes and lessons of the class, from critical theories of data feminism to applied methods of data science
6574

6675
### Project Deadlines
6776

68-
* **12/10 (Tue)**: Lightning Talks, Group A
69-
* **12/12 (Thu)**: Lightning Talks, Group B
70-
* **12/19 (Thu)**: Social Coding Portfolio
77+
* **Activity 1: Building Blocks** - Due: 10/08 (Tue)
78+
* **Activity 2: Python Primer** - Due: 10/22 (Tue)
79+
* **Activity 3: Practicing Pandas** - Due: 11/12 (Mon) - 11/15 (Fri) [Floating Deadline]
80+
* **Activity 4: Writing Documentation** - Due: 11/21 (Thu)
81+
* **Activity 5: Data Visualization** - Due: 12/05 (Thu)
82+
83+
___
84+
85+
* **Social Coding Portfolio**: Due: 12/19 (Thursday)
7186

7287
### Optional Content
7388
Feel free to include additional content in your portfolio that showcases your learning journey, such as:
74-
- Links to other relevant repositories or projects.
75-
- Additional reflections or blog posts.
89+
- Links to other relevant repositories or projects
90+
- Additional reflections or blog posts
7691
- Any multimedia content (e.g., video walkthroughs) that demonstrates your engagement with the material.

0 commit comments

Comments
 (0)