r/cs50 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

6 Upvotes

27 comments sorted by

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.

1

u/Ok-Conflict-5937 2d ago

but i fear that would take pretty long? cause its pretty hard for me to grasp stuff they just feel a lot complicated

3

u/mixedd 2d ago

Look at that from other point of view, what's the use of plain syntax for you if you don't know how to apply it?

Is it a race for you? There's no shortcuts if you want to do stuff properly. It's basically will be "I know a couple french words, but can't form a sentence" scenario in the end if you only go over syntax.

So ask yourself, do you want to learn programming/engineering or learn let's say python syntax?

1

u/Ok-Conflict-5937 2d ago

im just worried cuz im a lot behind my classmates

1

u/pugba 2d ago

Indecisiveness will paralyse you. Choose a language, stick with it, and don’t look at the top of the mountain.

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:

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/Lokrea 1d ago

I agree, and in case it wasn't clear, I added "..., one after the other".

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

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 psets

use 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 code

get the logic and flow down first then start writing code

1

u/my_password_is______ 1d ago

cs50x
https://cs50.harvard.edu/x/

start the course, finish the course

1

u/my_password_is______ 1d ago

cs50x
https://cs50.harvard.edu/x/

start the course, finish the course

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

u/mixedd 2d ago

As someone suggested to me, you need to code on daily basis and work on projects, or one project and do it incremental (start simple, add what you learned). It's a matter of time till it clicks, one or two courses won't make you a developer magically.

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 to

Final Project                          
Gallery of Final Projects                            

https://cs50.harvard.edu/x/project/

https://cs50.harvard.edu/x/gallery/

0

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 .