Skip to content

Commit 1b9ee3c

Browse files
committed
update project docs
1 parent 0e1c438 commit 1b9ee3c

File tree

4 files changed

+17
-97
lines changed

4 files changed

+17
-97
lines changed

ProjectIdeas.ipynb

+2-2
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@
107107
],
108108
"metadata": {
109109
"kernelspec": {
110-
"display_name": "Python 3",
110+
"display_name": "Python 3 (ipykernel)",
111111
"language": "python",
112112
"name": "python3"
113113
},
@@ -121,7 +121,7 @@
121121
"name": "python",
122122
"nbconvert_exporter": "python",
123123
"pygments_lexer": "ipython3",
124-
"version": "3.9.5"
124+
"version": "3.9.7"
125125
}
126126
},
127127
"nbformat": 4,

PythonParty.ipynb

+10-68
Original file line numberDiff line numberDiff line change
@@ -10,67 +10,8 @@
1010
"source": [
1111
"**Course Announcements**\n",
1212
"\n",
13-
"- **A4** due Mon 2/28 (11:59 PM)\n",
14-
"- **CL7** due Wednesday (3/2)\n",
15-
"\n",
16-
"**Note**\n",
17-
"- Prof Ellis' OH: extra **zoom office hours today 9-10 AM** (will use normal zoom link on canvas; make-up for Monday)"
18-
]
19-
},
20-
{
21-
"cell_type": "markdown",
22-
"metadata": {
23-
"slideshow": {
24-
"slide_type": "fragment"
25-
}
26-
},
27-
"source": [
28-
"**Black History Month**: Foundational Fridays\n",
29-
"\n",
30-
"- [Kimberly Bryant](https://twitter.com/6Gems) - founder and CEO of BlackGirlsCode\n",
31-
"- [Dr. Joy Buolamwini](https://twitter.com/jovialjoy) - founder of the Algorithmic Justice League\n",
32-
"- [Dr. Timnit Gebru](https://twitter.com/timnitGebru) - founder of The Distributed AI Research Institute; AI Ethics\n",
33-
"- [Erica Baker](https://twitter.com/EricaJoy) - CTO at DCCC\n",
34-
"\n",
35-
"Note: From 1977 to 2013, the. largest # of black women to earn a CS PhD in any given year was...10"
36-
]
37-
},
38-
{
39-
"cell_type": "markdown",
40-
"metadata": {
41-
"slideshow": {
42-
"slide_type": "notes"
43-
}
44-
},
45-
"source": [
46-
"**Q&A**\n",
47-
"\n",
48-
"Q: is there an easy way to download all the lecture notes from datahub using code in the terminal on my computer? \n",
49-
"A: Yes - you can zip/tar all the contents on datahub into a single file, download, and then unzip/untar on your computer. I will provide instructions on this at the end of the quarter.\n",
50-
"\n",
51-
"Q: I was using cat, and it wasn't printing anything out even though I know that new_file was placed within dir_name. Is there a reason for this? \n",
52-
"A: This is likely b/c you didn't add any contents to that file. Open that file up, add some text, and try `cat` again.\n",
53-
"\n",
54-
"Q: I still don't understand the purpose of using the command line. \n",
55-
"A: Quickly navigate to and organize files. Also, run python scripts (we'll be doing this today).\n",
56-
"\n",
57-
"Q: Why can't we just stick to jupyter for an intro class \n",
58-
"A: Because understanding how to work with .py files is critical for moving forward/understanding other code you see out in the world.\n",
59-
"\n",
60-
"Q: What does `!cd ~/` do? \n",
61-
"A: Takes you to your home directory. If you're already in your home directory...it will leave you where you are.\n",
62-
"\n",
63-
"Q: How do we use the command line directly on our computer, like in our computer's terminal? \n",
64-
"A: Search for \"terminal\" on your computer (if you don't have a terminal application already installed (depends on your computer), you could download a \"bash shell\". (I use iTerm.)\n",
65-
"\n",
66-
"Q: What is the difference between shell command and command line? Is there a difference? \n",
67-
"A: The command line is where you type shell commands. So, when you open up a terminal and get the black background, that is the command line. One thing you can do at the command line is type shell commands.\n",
68-
"\n",
69-
"Q: Is the command line somewhere we are able to write code or is it purely used for locating files, documents, and code that has already been written? A follow-up question if we don't write code in the command line would be where would we write code then? Just in another Jupyter Notebook file that we then retrieve using the command line? \n",
70-
"A: In a text editor! (The part of the notes we didn't get to on Wednesday but will discuss today.)\n",
71-
"\n",
72-
"Q: How is array different from other collections (like tuples, lists, dictionaries)? \n",
73-
"A: We'll discuss arrays next week when we discuss `numpy`, but for now, arrays can be N-dimensional."
13+
"- **A4** accepted for full credit until late deadline tonight (11:59 PM)\n",
14+
"- **E2** take-home due Friday at 11:59 PM"
7415
]
7516
},
7617
{
@@ -83,7 +24,7 @@
8324
"source": [
8425
"# Python Party!\n",
8526
"\n",
86-
"It's a bit less of a party while learning remotely..."
27+
"Parties have snacks - come on up and grab snacks! "
8728
]
8829
},
8930
{
@@ -148,8 +89,8 @@
14889
"source": [
14990
"Caveats if you take the final exam:\n",
15091
"1. The highest grade you can get in the course is an A (not an A+)\n",
151-
"2. There is no additional opportunities for extra credit (Note: if you've been filling out daily participation surveys that EC *will* apply to both exam and project)\n",
152-
"3. You have to complete on your own (same rules as previous midterms)"
92+
"2. There is no additional opportunities for extra credit (Note: if you've been answering ClassQuestin that EC *will* apply to both exam and project)\n",
93+
"3. You have to complete on your own (same rules as previous midterms, but it's completely take-home)"
15394
]
15495
},
15596
{
@@ -234,7 +175,7 @@
234175
"2. Brainstorm an idea\n",
235176
"3. Design what \"pieces\" (functions/classes/etc.) you need to execute that idea\n",
236177
"4. Start writing code + tests\n",
237-
"5. Submit on 1) Canvas or 2) datahub"
178+
"5. Submit on 1) datahub or 2) Canvas"
238179
]
239180
},
240181
{
@@ -312,7 +253,7 @@
312253
}
313254
},
314255
"source": [
315-
"#### Clicker Question #1\n",
256+
"#### Class Question #1\n",
316257
"Do you have an idea of what you want to do for your **project**?\n",
317258
"\n",
318259
"- A) absolutely no idea\n",
@@ -332,8 +273,9 @@
332273
"source": [
333274
"### Example Projects: \n",
334275
"\n",
335-
"* Previous Examples: https://github.com/COGS18/Projects#projects\n",
336-
"* Andrew's project video"
276+
"* Josh S!\n",
277+
"* Mingson: https://www.youtube.com/watch?v=ipEj5DtkopA&feature=youtu.be\n",
278+
"* Previous Examples: https://github.com/COGS18/Projects#projects"
337279
]
338280
},
339281
{

faq.md

+3-25
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,28 @@
1-
<!-- #region -->
1+
---
22
# Project FAQ
3-
43
This document is meant to answer a number of commonly-asked questions about the COGS 18 final project. We hope you find it helpful as you develop your awesome projects!
5-
6-
74
## File Structure and Requirements
8-
95
#### Do we still need a .py file if all our code and functions are in a Jupyter notebook?
10-
Yes, you need at least one .py file - either a module or a script. It can have both, but that is not required.
11-
6+
Yes, you need at least one .py file - a module that stores your code. If all of your code is in your notebook, it's time to reorganize.
127
#### What is the difference between a script and a module?
138
A module stores functions/classes that you'll want to use later, perhaps in your script or notebook. Scripts include code intended to run from top to bottom and will likely use the functions in your module.
14-
159
#### How do I create a script or module?
1610
On Datahub or Anaconda, in the new tab at the top right, select text file. When you save that file, save it with a .py extension. Alternatively, from the terminal, you can use the `touch` command.
17-
1811
#### What goes in requirements.txt?
1912
You should mention if you installed any new packages via pip for your project that aren’t included by default in the anaconda distribution/datahub so we'll be able to run your code properly. If you didn't install anything to run your code, you don't need to include this file.
20-
2113
#### How do I install a library?
2214
Use pip in the terminal. On datahub, the command will look something like: `pip install --user package`.
23-
2415
#### Is there a set number of functions or classes we need to include?
2516
You need at least 3 original functions or methods. There is no class requirement. (For example, you could have a single class with 3 methods. Or, no classes and 3 separate functions.)
26-
2717
#### Can I write my entire project code into one class?
2818
Yes, as long as the class includes a modular design where there are multiple independent methods.
29-
3019
#### Are we supposed to call our files and directories functions.py, ProjectNotebook.ipynb, etc. or should we call them something related to the project itself?
3120
You could change the names if you'd like or keep them as they are. Just make sure to import using the correct file names.
32-
3321
#### Can I submit the project using a different file structure than the template provided?
3422
Yes, the specific file structure is not important. We care that you have a folder that contains a notebook and a script/module file (or both). Other files can also be included if applicable. Use an oganization structure that makes sense for your project.
35-
3623
#### How/in what format should the files be submitted?
3724
For submitting your final projects, you will either 1) zip up all the files for your project (i.e. Notebook + module directory with tests and functions) and submit the zipped file on Canvas or 2) submit on datahub.
3825

39-
---
40-
<!-- #endregion -->
41-
4226
## Importing Modules
4327

4428
#### I wrote a function in a file, and I am trying to use it a separate file; however, it says that my function "is not defined".
@@ -50,7 +34,6 @@ Check the location of the file that contains your functions. If your my_function
5034
More resources for importing modules:
5135
https://docs.python.org/3/tutorial/modules.html
5236

53-
---
5437

5538
## Citations
5639

@@ -63,7 +46,6 @@ This is fine and good practice. Including a comment (`#`) with the URL is suffic
6346
#### Is it okay to use the code from Assignment X as long as I make some modifications? Will I be marked down for not coming up with it on my own?
6447
This is fine as long as you cite your sources with a comment and write at least 3 original functions/methods that are not from the Assignment.
6548

66-
---
6749

6850
## Documentation and Comments
6951

@@ -79,7 +61,6 @@ No need to describe the methods; just describe what the class is used for briefl
7961
More resources for formatting docstrings:
8062
https://numpydoc.readthedocs.io/en/latest/format.html#documenting-class-instances
8163

82-
---
8364

8465
## Testing
8566

@@ -99,7 +80,6 @@ If you open up a terminal and navigate to the directory where your test function
9980
The simplest way is to move the user input outside of the function and give it as a parameter to the function. Otherwise, we recommend checking out this link:
10081
https://stackoverflow.com/questions/35851323/how-to-test-a-function-with-input-call
10182

102-
---
10383

10484
## DataHub Troubleshooting
10585

@@ -116,7 +96,6 @@ There are two general approaches (with option 1 being the simpler one):
11696

11797
2. Use the command line on datahub to zip files up (if you're comfortable with how to do this), and download the zipped file to desktop to submit.
11898

119-
---
12099

121100
## Submission
122101

@@ -126,7 +105,6 @@ Canvas or Datahub.
126105
#### How many times can I submit the project?
127106
You can submit as many times as you'd like, but the most recent submission is what we'll grade.
128107

129-
---
130108

131109
## Other Questions
132110

@@ -139,5 +117,5 @@ No, all you need to do is make sure to turn in your final project.
139117
#### How do I specify extra credit?
140118
There is an extra credit opportunity on the final project. If you go above and beyond the requirements of the project and/or teach yourself something new in the process of completing the final project, explain this in the final cell of the Jupyter Notebook you turn in. This should include 1) your background in programming prior to this course and 2) a description of how you went above and beyond and/or what you learned in the process of completing the project.
141119

142-
---
143120
*This document was originally written by [Severine Soltani](https://github.com/SevSoltani), an awesome COGS 18 Instructional Assistant. Thanks to Severine for taking the time to draft this to help students going forward!*
121+
---

overview.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ The broad objectives of this project are for you to:
2020

2121
### Getting Started
2222

23-
We strongly encourage you to discuss potential project ideas and with your TAs/IAs/instructor through office hours and coding labs (or on Campuswire). This will give us a chance to give you feedback and help guide your project plans.
23+
We strongly encourage you to discuss potential project ideas and with your TAs/IAs/instructor through office hours and coding labs (or on Piazza). This will give us a chance to give you feedback and help guide your project plans.
2424

2525
Suggestions for working on projects:
2626

@@ -81,7 +81,7 @@ As you work through your project, we recommend taking an approach in which you u
8181

8282
To complete the project you must submit your project, which will include Python code (>=3.6) that implements your project. Your **project must include (at least) one Jupyter notebook, one python file (a module file), and one test file.** The Jupyter notebook file will minimally include a description of the project and code that demonstrates your project, organized in cells.
8383

84-
The actual code for the project can be organized into either the notebook, and/or into python files, as either module files and/or scripts. Exactly where and how you organize the code can and should be decided by the project topic itself. For example, projects that are more focused on functions and classes may be more organized into a module organization. For some projects, the code may be well organized into a script that executes your project. For other projects, with more interactive components, much of the code may be presented within the Jupyter notebook. Regardless of the project, the design should be modular and include original code.
84+
Most of the actual code for the project will be organized into python files, as either module files and/or scripts. Exactly where and how you organize the code can and should be decided by the project topic itself. For example, projects that are more focused on functions and classes, all code may be organized into a module. For some projects, the code may be well organized into a script that imports from your module to execute your project. For other projects, with more interactive components, much of the code may be presented within the Jupyter notebook. Regardless of the project, the design should be modular and include original code.
8585

8686
Projects are individual, and each person needs to submit a project including (at least some) unique and original code. Projects can also include code that comes directly from the assignments, and/or from working with other students on project ideas, but this should be clearly marked and attributed in your submissions. More details on external code are included below.
8787

0 commit comments

Comments
 (0)