Comments (24)
I'd like to add that three of the later (post-regex) chapters of Py4E rely on a level of twitter API access that is no longer available for free. This seems to have only been brought up in the channel a couple of times, so I'm guessing most people are skipping these later chapters regardless.
I've done Py4E as well as a couple choice weeks of CS50P to supplement (namely the sections on Unit Testing and OOP). CS50P has a much higher production quality for its lectures and more involved problem sets. However, the presentation style can be hectic and I think had this not been my third python-based MOOC there would have been a lot more rewinding and rewatching throughout the lectures I watched versus Py4E's. I think there's something to be said for Py4E's short-video, extra-gentle, office-hours-visit vibe considering we are discussing what to recommend for a literal-very-first programming course.
EDIT: For a more salient recommendation I'd say to keep Py4E but further highlight, perhaps directly on the main CS repo, to only do the first 11 chapters.
from computer-science.
I'm still only on the first course (PY4E), yet, I'm all in on replacing PY4E with this course without a second thought . I watched the first lecture and it was amazing. The lecturer did a fantastic job at keeping me engaged throughout the whole thing. I find it to be WAY better taught and just a more high-quality, in-depth course in general.
from computer-science.
Above Bradley writes "Ideally we would love to involve several people who can meaningfully speak to the differences."
This RFC still has only 1 contributor, the original submitter, who has written with their experience of actually taking both courses.
I would say the next step is to more aggressively recruit participants to take both courses in full and share their perspectives. Such an effort can include:
- a pinned message in the PY4E discord channel
- a recurring message in the PY4E discord channel
- a course page for Intro to Programming which explains that we'd like some student volunteers to take both courses and share their experience.
It would be helpful in these messages to ask students to flip a coin to decide which to take first, so we avoid an ordering bias.
@pulkitkrishna00 , do you need support in carrying out some set of those?
from computer-science.
- If we don't know anybody yet who has, can we get a few people to volunteer to take both??
I have done Py4E and am doing CS50P currently. I have done upto week 6 (the seventh week).
the lectures are monolithic
The lectures of CS50P are much shorter than CS50, but definitely much longer than Py4E. Most of the lectures are about 1 hour long (except week 0, which is 1 hour 45 minutes). Also, as I said the instructor does coding live in the recordings, unlike in Py4E, so you can follow along. This is much better than watching the instructor highlight already written code in a presentation, IMO.
the assignments are too long and too hard for people working individually
CS50P does not have these problems. The assignments are short and easily solvable. So far, I don't think any assignment involved more than 50 lines of code. The number of assignment is larger than CS50, but the overall time spent on solving the assignments of a particular week is much shorter than CS50.
that the topic selection is extremely broad yet skin-deep -- like a "survey course".
Like I said, CS50P teaches almost the same things as Py4E upto Regular Expressions plus debugging and Unit testing. Unlike CS50, the sole focus is on teaching Python. The "names" of the weeks are:
- Functions, Variables
- Conditionals
- Loops
- Exceptions
- Libraries
- Unit Tests
- File I/O
- Regular Expressions
- Object-Oriented Programming
- Et Cetera
from computer-science.
@pulkitkrishna00
this is already easy we can add alternative but can't wipe out entire cource to make reit easy as all different level of people are opting this cource . and yes cs50p is one of the great cource as i have done all cs50 coneurce like cs50 web cs50 and cs50p so i agree this cource is great to opt but we can't remove py4e as it has its own value.
from computer-science.
@waciumawanjohi I have opened PR #1177 adding the course page. I do not have permissions to pin a message on discord, so yes, I need help to pin it.
from computer-science.
Can i take both at the same time?
from computer-science.
You can include CS50P as a an option in CS timeline spreadsheet. Right now the first course is PY4E and I CS50P is not there.
from computer-science.
I am doing both simultaneously and can attest that CS50P feels like a much more holistic, exhaustive, and organized course. The problem sets are drastically more challenging/varied/numerous and encourage reading the documentation. Many (if not all) of the exercises on PY4E already have some code pre-written which might not seem like a big deal but facing an empty document and planning a course of action feels pretty essential to me. Also a big advantage of 50P is the live coding that takes place in the lectures where you can follow more closely the problem-solving reasoning the professor is going through(simulating).
from computer-science.
I completed CS50P and think if it's just about learning Python and getting prepared for MIT 6.0001 CS50P is better suited than PY4E. I also completed the Introduction to Programming with Python and Advanced Programming with Python courses from the University of Helsinki and I liked them even better than CS50P, although that might just be a personal preference and both courses are excellent.
from computer-science.
Recommend Py4E only upto Regular Expressions in the curriculum.
Afaik this is the majority opinion in the community.
Py4e is really only there to prep students for MIT 6001x.
from computer-science.
The request is compelling and (in my opinion) merits discussion.
I'd like to have a little bit more information:
- Do we know anybody yet who's taken CS50P to completion? Even better, do we know anybody who has taken both Py4E and CS50P? Ideally we would love to involve several people who can meaningfully speak to the differences.
- If we don't know anybody yet who has, can we get a few people to volunteer to take both??
- Frequent criticisms of CS50x (the parent course for CS50P) include that the lectures are monolithic, the assignments are too long and too hard for people working individually, and that the topic selection is extremely broad yet skin-deep -- like a "survey course". How does CS50P address these concerns?
from computer-science.
if people feel py4e difficult after Regular Expressions then they can stop there as it is only introduction to cs and not Not specific programming which can be adressed later in the core cs .so we need something in intro to cs which covers basics of all aspects of cs .cs50 is good one .
from computer-science.
To add another point, Py4E is only included to teach python and prep students for MIT 6001x. But the thing is, Py4E is a specialization on Coursera. It is not designed to teach only the python language to prepare for another course. CS50P on the other hand, is specifically designed to only teach the basics of Python.
from computer-science.
if people feel py4e difficult after Regular Expressions then they can stop there as it is only introduction to cs and not Not specific programming which can be adressed later in the core cs.
Py4E is currently placed under the heading "Introduction to Programming". It is really only there to prep students for MIT 6001x, which is "Introduction to CS". And people, unless they ask on Discord, do not know that they can stop there. They may become demotivated and think that CS is not for them.
so we need something in intro to cs which covers basics of all aspects of cs .cs50 is good one .
This is outside the scope of this issue, but CS50 has been discussed many times in the past, I suggest you read those discussions. We already have a very good intro CS course.
from computer-science.
@pulkitkrishna00
if they can't figure this small little things even we have great support on discord they can ask any time we are there for that and think of those whose who really required all of it for them removing entire cource won't be beneficial also it will be very tough for them to be self taught cs if they can't figure it out i don't know you are getting it or not.but they have to understant their requirements what they need but somewere you also hold point so "we could add as reminder that till the Regular Expressions chapter is requirement or mandatory for the cource what you say i am just suggesting don't get offended please."
cs50 i said just as other optional not mandatory cource as it gives less detailed but more of topic view and now they are updating the cource every single year and haa i agree very well we have best course in the world just i am adding to it may it help just re think sorry to mentioning that in you comment i am really sorry
from computer-science.
if they can't figure this small little things even we have great support on discord they can ask any time we are there for that and think of those whose who really required all of it for them removing entire cource won't be beneficial also it will be very tough for them to be self taught cs if they can't figure it out i don't know you are getting it or not.but they have to understant their requirements what they need but somewere you also hold point so "we could add as reminder that till the Regular Expressions chapter is requirement or mandatory for the cource what you say i am just suggesting don't get offended please."
The point of OSSU is to make things easier for people self-teaching themselves CS. If we can make things easier for them, what is the problem in doing so?
I would understand going through all these, if there was no alternative course which provided exactly what is needed. But since CS50P teaches exactly the things that is required, is newer and much better (IMO), I would prefer to switch the courses.
from computer-science.
@pulkitkrishna00 this is already easy we can add alternative but can't wipe out entire cource to make it easy as all different level of people are opting this cource . and yes cs50p is one of the great cource as i have done all cs50 cource like cs50 web cs50 and cs50p so i agree this cource is great to opt but we can't remove mit cource it has its own values.
Wait, just to clear any confusion, this RFC is definitely not about replacing the MIT course. It is about replacing the Py4E course, which is there just to prepare for the MIT course.
from computer-science.
@pulkitkrishna00 this is already easy we can add alternative but can't wipe out entire cource to make it easy as all different level of people are opting this cource . and yes cs50p is one of the great cource as i have done all cs50 cource like cs50 web cs50 and cs50p so i agree this cource is great to opt but we can't remove mit cource it has its own values.
Wait, just to clear any confusion, this RFC is definitely not about replacing the MIT course. It is about replacing the Py4E course, which is there just to prepare for the MIT course.
sorry for that py4e also i mean in that and i taught you want to put cs50p and remove all other intro to cs because it has two courcework intro to programing and intro to cs
from computer-science.
PR merged.
If you post a message in the appropriate Discord channel and then ping me, then I'll pin the message.
from computer-science.
Recommend Py4E only upto Regular Expressions in the curriculum.
Afaik this is the majority opinion in the community.
Py4e is really only there to prep students for MIT 6001x.
How learn english plan, i'am egyption ??
from computer-science.
Background: I initially took PY4E up until Tuples, and then switched to CS50P until I finished it. I went back to PY4E and completed the whole thing.
I would say that if PY4E is there for people who knows little to no coding, then I agree that PY4E is a better option. For starters, PY4E offers a very gentle introduction to programming in general so I would imagine this would be a better fit for laypeople with little to no coding experience. CS50P is fine during the first week but then exponentially gets harder starting around Week 6 or so.
However, I do agree that CS50P better prepares you for MIT 6.00.1x since it is harder than PY4E. So I would propose maybe PY4E up till regular expression (and maybe OOP since it's only a short read) -> CS50P -> MIT 6.00.1x for optimal preparation.
I have heard that the PY4E people are planning to modernize the course to include f-strings and such but I'm not sure when that will happen. All in all, I think I'm pretty conflicted between choosing one of the other.
from computer-science.
Related Issues (20)
- RFC: HOT 1
- RFC: Add Human-Computer Interaction Book or MOOC to Additional Resources HOT 4
- RFC: Adding another optional introduction to cs harvard CS50 2023 HOT 4
- RFC: Object-Oriented Design Course is Prerequiring basics of JAVA HOT 1
- RFC: Replace the current Object Oriented Design and Design Patterns courses HOT 14
- RFC: problem on course Software Testing HOT 9
- RFC: Replacing edX: Software Engineering: Introduction with Coursera: Introduction to Software Engineering HOT 6
- How to Enroll into OSS HOT 1
- Software Testing course link gives 404 HOT 2
- RFC: Consider adding physics courses HOT 5
- The advanced math section on cs.ossu.dev is broken HOT 1
- RFC: Link for Software Testing course is broken - 404 (under Advanced programming section) HOT 2
- ENHANCEMENT: Can I provide a small website hosted using github pages ? HOT 1
- README link to Discord is outdated HOT 4
- Ossu masters
- Blank template HOT 2
- google spreadsheet "OSSU CS Timeline" has small error in timeline estimate HOT 1
- RFC: Math Prereqs are not recommended on the Discord HOT 6
- Proposal for Adding Arabic Translation to OSSU Computer Science Curriculum HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from computer-science.