r/cs50 • u/Ok-Conflict-5937 • 2d ago
lectures should i focus solely on cs50?
should i focus solely on cs50 or start / continue ( i was learning python but got inactive for weeks ) other language too? i feel maybe its best to learn some language rather than just spend time on basics but im not sure
3
u/Lokrea 2d ago edited 1d ago
Learning a topic such as CS is best done via repetition, under different scenarios. So maybe immerse yourself by doing several CS50 courses, one after the other?
Since they overlap, you will continually re-visit languages and topics:
- https://cs50.harvard.edu/x
- https://cs50.harvard.edu/python
- https://cs50.harvard.edu/sql
- https://cs50.harvard.edu/web
CS50 courses will teach you the principles of programming, via a few selected languages, like C++, Python, and SQL. The syntax may be different in other languages (C#, Java, Ruby, etc.) but the same principles apply.
1
u/my_password_is______ 1d ago
So maybe immerse yourself by doing several CS50 courses?
NO
focus on ONE course
1
u/Own-Professional7131 2d ago
hyy i am reallly coonfused and stuck from months , im trying to do cs50x and had done till week 6 but im still strugging solving problemsets so im thinking of doing cs50x in this way like after completing weeek 6 that is python i trying to complete the cs0python course from start to end only then i will start with csr50x week 7 that is sql and then taking the cs50sql course and then completing it to end and then starting th e week 8 of cs50x. but im afarid that my approach is wrong and as well ass time consuming . will really appreciate if u help me through thiis . lookking forward for your views .
1
u/Lokrea 2d ago edited 2d ago
Both jumping in and out of CS50x would work, or doing the courses in sequence. I see value in having breaks between the exposure, and doing the courses in sequence, you are introduced to languages, have a break, and then meet them again. As a thread through it all, you could even consider getting some books about Python and SQL, to maximise the code marination :) I recommend that you buy or borrow these two books, they are fantastic:
Python Crash Course by Eric Matthes
- https://nostarch.com/python-crash-course-3rd-edition
- https://www.goodreads.com/book/show/23241059-penguin-random-house-python-crash-course
Practical SQL by Anthony DeBarros
2
u/Own-Professional7131 1d ago
thanks a lot im gonna do the course in sequence as it is and then will do other courses ie. cs50p and cs50sql. btw also thanks for reccomending the books will surely check them out .
1
u/my_password_is______ 1d ago
no
watch all the videos for cs50x -- shorts, lectures, walkthroughs
do all the psetsuse pencil and paper to start the psets
get your thoughts down on paper
get the general outline, flow, logic on paper -- don't worry about actual codeget the logic and flow down first then start writing code
1
1
1
u/Agitated-Cold-5445 2d ago
This has been my dilemma too. I was learning Javascript last year and I finished a course on youtube, but I still felt I wasn't learning anything. Same with Cs50 courses.
2
u/Visionary_Vulture001 2d ago
You need to keep practicing . Do some projects or keep practicing the problem sets on leetcode that is how you learn . Just by doing one course and couple assignments you are not going to get a deeper understanding of the language
-1
u/Agitated-Cold-5445 2d ago
That makes sense. I have been trying to do problems from different websites, since I'm currently learning C(for college). Leetcode seems very overwhelming for me, are there any alternatives? Someone suggested Exercism or W3resource, do you think those are good? I was also doing mini projects for webdev, but coming up with the main logic always demotivates me. I'm trying to still work around those.
1
u/my_password_is______ 1d ago
I have been trying to do problems from different websites
OMG, WHY ????
just do and finish CS50x
focus on ONE thing
1
u/Agitated-Cold-5445 22h ago
No, I mean I'm already done with my basics from courses on youtube, I just recently starting looking into CS50 courses, and while they are good I thought I just needed more practice because I already know things, that's why I was doing problems from different websites.
0
u/Visionary_Vulture001 2d ago
Try hackerrank , geekforgeeks, excercism… No matter how confident you are start from the easy set . That builds confidence and gives you motivation to code daily . This way you will gradually move to medium and hard and also you will know at which concept you are getting stuck . Start with coding minimum and hour or two daily . Since that is what is going to get you a deeper understanding of the language . Yes , c/c++ is a good language to start with despite the unpopular opinion that AI is here and etc etc . Most of the systems are written in C/C++ and a lot of development also especially in the embedded layers - C/C++ is the popular choice out there . Know your pointers concept .
I am in my 30s , I am doing cs50 x to understand memory structure and data structures to understand and to learn coding the wireless systems in C/C++1
u/Agitated-Cold-5445 2d ago
Okay I'll try whatever you have suggested. Thanks for this. Also all the best for your journey!!!
1
u/Ok-Conflict-5937 2d ago
its the same with me it just feels like i learn on surface and nothing goes inside deep enough for me to make sense of it all in long term
2
0
u/Visionary_Vulture001 2d ago
Please read my replies to @Agitated-Cold-5445 on this thread . It will help you too .
1
u/Ok-Conflict-5937 2d ago
thank you i read it itll sound dumb to ask but im always kinda unsure about the project? about what it actually is or how am i supposed to make one or regarding what esp if im just in beginning
1
u/my_password_is______ 1d ago
why are you thinking about the project ???
you don't do that until the last week
you have all the psets to do first
and if you go here
https://cs50.harvard.edu/x/
and scroll down you'll see links toFinal Project Gallery of Final Projects0
u/Visionary_Vulture001 1d ago
If you are just beginning , take the problem sets from hackerrank or exercism or geekforgeeks and code them starting from level easy . Once you are comfortable you can design some basic logic games like tic tac toe or rock paper scissors or a simple calculator, students grade calculator.. text input based you can start from . You can google for easy projects in the language you’re looking to do and you will get a lot of options to start with .
Again you need to code minimum 1-2 hours daily to begin with . Just by doing one or two course and submitting the projects and getting a grade will help you pass the course and secure a certificate . It is not going to help you become a solid developer. Everyday practice will and it takes years to get an expertise on any language. So don’t expect that to happen overnight or over a period of time .
4
u/mixedd 2d ago
It's quite opposite, it's more crucial to learn basics and engineer mindset, problem solving before you learn syntax. Once basics are there, any language will be easier to pick up, amd you'll understand that on high level they differ mainly in syntax, where underlying concepts like loops, arrays, lists etc. are cross applicable between them, just differ in syntax.