cse163 / book Goto Github PK
View Code? Open in Web Editor NEWSource code for the CSE 163: Intermediate Data Programming book (with code for practice problems)
License: Other
Source code for the CSE 163: Intermediate Data Programming book (with code for practice problems)
License: Other
I don't think Thebe is going to be worth it. I realized that it runs the Notebook in the root directory, so data files are not present. I think having Colab + Binder is sufficient, especially since we have to tell the students that Colab requires them to download/upload the data file.
The fact that the code snippets aren't interactive is a given with this system, but I wonder if we can make it a bit better for students.
One option (a lot of work) is to convert the reading slides into Jupyter notebooks. Might be better for long term, but not for short.
Maybe for the short term, we could make a script to make one Python module for each reading slide that they could download that has all the code snippets in one module? Might be low value so just leaving this idea as a potential solution.d
/home
and /course/lecture-readings
in the textThis may be a limitation of the platform, but the cells in the Pandas lessons cannot be executed on the textbook pages because pandas is not installed. For example, on this page: https://cse163.github.io/book/module-3-pandas/lesson-9-time-series/time-series.html
High school course won't match weeks to ours
/home
and /course/lecture-readings
in the textThe download button at the top of the page is provided by the sphinx-book-theme. Is it possible to plug into that and include the CSV files (or zip) that are used in the lesson as part of the list of download options.
Note, this only only appears on Jupyter slides and I'm not sure how we can provide it on practice problem slides. Might just be a no-op, but thought I should write the idea down while I had it.
For example, file attachments
Should replace Nicole's videos.
/home
and /course/lecture-readings
in the textMight as well include it since it's written and we are short a lesson currently due to holidays.
Currently all videos are made by Soham, so probably a good idea to replace them unless we get permission to use his videos.
Jeff reported a problem with the geospatial practice problem for plotting the population in South America when coding on Repl.It.
Upon further investigation when running on our solution, the expected image and the output image have differing shapes. The expected out has 3 color channels while the output of our solution has 4. I think downloading the image from EdStem caused this problem in differing encodings.
Task: Need to look through all the problems that compare against saved expected output images and make sure they match what our solutions do. Likely need to regenerate these images from the solution code so they have the right dimensions.
Current problematic problems:
book_source/coding_problems/module-4-libraries-for-data-science/lesson-10-data-visualization/practice-plotting-1
book_source/coding_problems/module-4-libraries-for-data-science/lesson-10-data-visualization/practice-plotting-2
book_source/coding_problems/module-7-geospatial-data/lesson-18-geospatial-data-misc-python/practice-population-in-south-america
book_source/coding_problems/module-7-geospatial-data/lesson-18-geospatial-data-misc-python/practice-small-and-rich
book_source/coding_problems/module-7-geospatial-data/lesson-20-dissolve-join/practice-population-maps
/home
and /course/lecture-readings
in the text/home
and /course/lecture-readings
in the text/home
and /course/lecture-readings
in the textShould come after #5
/home
and /course/lecture-readings
in the text/home
and /course/lecture-readings
in the textSome of this work will require manual edits. These will include
/home
and the root course directory.Incomplete sentence: "Note: we" at the end of the Hello World section, right before Hello World is shown in other languages.
It might be good to make pages with specifications and starter code for take-home assessments so those working at home can do them.
Some notes on implementation:
/home
and /course/lecture-readings
in the textTasks
course/lecture-readings
In the lesson, it says:
"Now, let’s load in this dataset and train a machine learning model to predict the species from the features!"
Error/Suggestion:
I believe that we want to predict the "city" in this lesson.
In the lesson, it says:
"In the last slide, we introduced two questions we have to ask ourselves when applying an ML task."
Error/Suggestion:
There is no previous slide, there is a previous lesson. But, the previous lesson doesn't talk about the two questions posed here, at least not that I could find. Perhaps just say, "We need to ask ourselves two questions when applying an ML task."
Currently the text on Pause and Think slides refers to live class sessions and group work, but it might not be how other instructors are running the course. Might be good to replace all of them with the same standard text once we figure out the proper wording.
I don't completely love that we are just using plain text for question options and telling students to write their own spaces.
The challenge is I don't know how to do more complicated HTML in templating language. Can we figure out something better like:
What do we do about solutions? Probably going to be too difficult for a V1, so we will likely omit since that requires more complex logic.
Identify what to do with readings that reference EdStem paths like/course/lecture-readings
Seems to be missing from our port over
Maybe check for other video slides too?
Currently the first lesson in the book is lesson 2 since the first lecture in past 163 offerings has been used to introduce the class and syllabus. We should add a lesson 1 for others using this book.
/home
and /course/lecture-readings
in the textWe have a bunch of other practice problems that didn't get included in the main lessons. We should copy these over at some point.
A couple of notes on implementation details:
generate_pages.py
to somehow ignore pages we've already generated (not impossible, just extra work).module/
lesson/
index.md # Table of contents
slide-1.md
slide-2.md
practice-problem.md
practice-probblem.zip
optional-practice/
index.md # Table of contents
prob-1.md
...
Per Jeff's request
Should come after #5
Not really sure what to do here since nbgrader
might be too difficult to set up for students to run.
Seems simple enough to copy questions/passages but what about more complicated question types (e.g., parson's)
Many pages link to resources hosted on EdStem's servers (most common: images in a reading). This is fine for now, but there is no guarantee those links will live forever. We should download all resources we use from https://static.us.edusercontent.com/files/...
to avoid potential bugs in the future with these links changing.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.