Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RFC: Request for Comment - Proposed Additions to Data Science Curriculum #118

Closed
mejbass opened this issue Feb 20, 2024 · 7 comments
Closed

Comments

@mejbass
Copy link
Member

mejbass commented Feb 20, 2024

●Problem:
The current OSSU Data Science Curriculum lacks updated and relevant courses, deviating from the curricular guidelines.

●Duration:
1 month

●Background:
The issue lies in the omission of recent, valuable courses that align with the curricular guidelines.
To address this, I've updated the curriculum README, incorporating essential courses such as:
[CS50’s Introduction to Programming with Python] (https://cs50.harvard.edu/python/2022/)
[CS50’s Introduction to Databases with SQL]
(https://cs50.harvard.edu/sql/2024/)
[Learn Linear Algebra] (https://www.khanacademy.org/math/linear-algebra) from Khan Academy.

These additions aim to bridge the gap between the current curriculum and the outlined guidelines, providing learners with more comprehensive and up-to-date resources.

●Solution:

●Advantages:

  • Aligns the curriculum with the latest curricular guidelines.
  • Enhances the learning experience with current and relevant content.

●Disadvantages:

  • Potential resistance to change.
  • Initial confusion for users accustomed to the previous curriculum.

●Alternatives:

  • Conduct a comprehensive review of all courses to identify further gaps.
  • Establish a periodic review process to ensure ongoing alignment with curricular guidelines.
@pulkitkrishna00
Copy link
Contributor

pulkitkrishna00 commented Feb 20, 2024

There is an RFC for CS50P to replace Py4E in the computer science curriculum (opened by me). The current status is that we are searching for volunteers to take both the course and provide feedback. For this, we have a coursepage for "Intro to Programming" listing both CS50P and Py4E. Since the purpose of the Py4E course is the same in this curriculum too, perhaps we can have the same here? (This would also probably accelerate the number of volunteers taking both courses, as many people taking the DS curriculum will also see the request). I have opened pull request #119 for that.

@mejbass For the CS50 SQL course, what topics does it cover (from the curricular guidelines) that the SQL courses already listed fail to cover?

As for Khan academy Linear Algebra, I don't see any benefit in including it, when we already have a very good Linear Algebra course.

@mejbass
Copy link
Member Author

mejbass commented Feb 20, 2024

Hello @pulkitkrishna00 ,

Thank you for your question regarding the CS50 SQL course. The course covers a range of modules and problem sets, providing a comprehensive understanding of SQL concepts. Here's a brief overview:

  1. Querying

    • Problem Set: 36 Views, Cyberchase
  2. Relating

    • Problem Set: Players, Packages, Please, DESE, Moneyball
  3. Designing

    • Problem Set: ATL, Happy to Connect, Union Square Donuts
  4. Writing

    • Problem Set: Modules: "Don’t Panic!," Meteorite Cleaning
  5. Viewing

    • Problem Sets: Census Taker, The Private Eye, Bed and Breakfast
  6. Optimizing

    • Problem Set: your.harvard
  7. Scaling

    • Problem Sets: Happy to Connect, "Don’t Panic!" with Python, Final Project, Library Management System

I believe the CS50 SQL course provides a unique perspective and additional coverage in certain areas compared to the existing SQL courses in the curriculum. I look forward to contributing and providing feedback based on my experience with this course.

Best regards,
@mejbass

@Smcgb
Copy link
Contributor

Smcgb commented Feb 22, 2024

I am a firm believer that Py4e is the best introductory class for python. The videos are clear, the assignments are interesting for beginners. The advanced concepts (web services, databases and viz) are great guided intros to the Data Science track. CS50 Python covers less overall. Benefits may be that it is a faster intro as the missing items are reintroduced in later programming courses, but I am not sold on cs50 being correct for this program.

@pulkitkrishna00
Copy link
Contributor

pulkitkrishna00 commented Feb 23, 2024

I am a firm believer that Py4e is the best introductory class for python. The videos are clear, the assignments are interesting for beginners. The advanced concepts (web services, databases and viz) are great guided intros to the Data Science track. CS50 Python covers less overall. Benefits may be that it is a faster intro as the missing items are reintroduced in later programming courses, but I am not sold on cs50 being correct for this program.

@Smcgb There is a line before the Py4E course:

Students who already know basic programming in any language can skip this first course

So, the purpose of Py4E is not to do be "great guided intros to the Data Science track". That is MIT 6.00.1x and 6.00.2x' job. The entire purpose of Py4E is there to prepare people who have never programmed before for MIT courses. IMO, CS50P is better suited for that job. If you think CS50P is missing topics that Py4E has, related to preparing people for MIT courses, please list what specific topics they are.

Also, three of the later (post-regex) chapters of the Py4E course is broken for now, due to the change in the Twitter API: ossu/computer-science#1164 (comment)

@Smcgb
Copy link
Contributor

Smcgb commented Feb 23, 2024

If you think CS50P is missing topics that Py4E has, related to preparing people for MIT courses, please list what specific topics they are.

It is your job to make a compelling case on why to switch and lose the additional content that PY4E has in favor of CS50P, knowing the MIT course is the next one on the list.

Also, three of the later (post-regex) chapters of the Py4E course is broken for now, due to the change in the Twitter API: ossu/computer-science#1164 (comment)

PY4E doesn't have twitter API anymore, instead opting for a provided API key for google maps Geodata. The entirety of the coursework is doable since at least June 2023 when I completed the coursework in its entirety doing OSSU.

@pulkitkrishna00
Copy link
Contributor

pulkitkrishna00 commented Feb 24, 2024

@Smcgb

It is your job to make a compelling case on why to switch and lose the additional content that PY4E has in favor of CS50P, knowing the MIT course is the next one on the list.

I have already provided the reason: The purpose Py4E fulfills in the curriculum does not require those topics. Having additional topics is not always a good thing. The purpose of Py4E is only to prepare people for MIT courses, and any additional topic is unnecessary.

We already recommend people on discord to move to the MIT courses once they have completed up to the Regular Expressions chapter. One of the first reactions on discord about my RFC in the CS curriculum was:

image

Py4E is designed to be a complete specialization on coursera and is not really the best fit for the place it is currently in the curriculum. CS50P, on the other hand, is geared at only teaching the basics of Python (which is the entire purpose of the Intro-programming section in the curriculum).

I have already provided many additional reasons for making the switch in ossu/computer-science#1164. As you may see on that issue, the main reason I proposed the switch was to remove those "additional topics". I encourage you to read it. The course fulfills the same purpose in both the curriculum, and hence anything said in that issue is also applicable here.

@waciumawanjohi
Copy link
Member

I think that this RFC would benefit from being broken into multiple RFCs, as it deals with several unrelated changes.

Similar to Pulkit, I will express my skepticism about using Khan Academy for linear algebra. But I am interested in having that skepticism dispelled by evidence of new material added to KA that makes it a comprehensive resource for linear algebra.

In addition, this recent PR should address the discussion around CS50P.

@mejbass mejbass closed this as completed May 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants