Giter Site home page Giter Site logo

cse163 / book Goto Github PK

View Code? Open in Web Editor NEW
9.0 1.0 5.0 40.47 MB

Source code for the CSE 163: Intermediate Data Programming book (with code for practice problems)

License: Other

Makefile 0.01% Python 3.99% Jupyter Notebook 90.07% HTML 5.90% CSS 0.03%
education data-science data-programming introduction-to-python

book's People

Contributors

debbieyuster avatar luckyqxw avatar zachkirsch avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

book's Issues

Disable Thebe

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.

Better Code Snippets

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

Module 6

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Module 2

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

CSV Downloads in Download Button

The 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.

Module 8

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Make videos for lesson 22

Currently all videos are made by Soham, so probably a good idea to replace them unless we get permission to use his videos.

Tests that compare images might be broken

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

Module 9

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Module 5

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Module 10

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Module 3

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Module 1

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Manual Editting

Some of this work will require manual edits. These will include

  • Generally look for errors from the auto-translation (there are a couple of odd places)
  • Mentions to EdStem and "Marking" (and other EdStem terminology)
  • For practice problems and Jupyter notebooks, data files can't reference /home and the root course directory.

Include pages with starter code for Take-Home Assessments?

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:

  • Maybe add a disclaimer that these are public versions of our assignments and might not align with assignments if they are using this book for a class. Remind them to always default to their instructor's policies and assignments used.
  • We should not include test runners here since we likely don't want to give away the tests for take-home assessments.
  • Would probably make sense to put as a new page inside the appropriate module's directory.

Module 7

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Identify how to share code slides

Tasks

  • Make webpages to show problem descriptions
  • Make zips of starter code
  • Include a test-runner in the zips (see CodePost runner)
  • Change starter code to not referenc course/lecture-readings
  • Add download links for data files in document slides that refer to course/data

Lesson 11: Machine Learning Code confusions

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."

Update wording for all Pause and Think

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.

Investigate better format for Quiz slides

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:

  • Radio/check boxes for multiple choice and multiple answer
  • Short input box for short answer and numerical
  • Long input box for general

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.

Data Viz Video Slide

Seems to be missing from our port over

Maybe check for other video slides too?

Add a lesson 1 for the book

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.

Module 4

  • Generally, look for errors from the auto-translation (there are a couple of odd places where things got copied weirdly)
  • Mentions to EdStem and "Marking" (and other EdStem terminology).
  • Mentions of /home and /course/lecture-readings in the text

Add Additional Practice Problems

We 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:

  • This might be a case that trying to programmatically create the problems like we did with the initial book conents might be too hard. Would need to modify the lesson sync script to include practice problems and would need to change the generate_pages.py to somehow ignore pages we've already generated (not impossible, just extra work).
  • Maybe would make sense to embed each practice problem in the lesson they belong to. Maybe make a folder in each lesson that we link to at the end of the lesson's Table of Contents (clearly indicating they are extra practice). That keeps things together with its content but can keep things less cluttered. So an example folder structure coul be
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
      ...

Remove Static EdStem files

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.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.