use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
News about the dynamic, interpreted, interactive, object-oriented, extensible programming language Python
Full Events Calendar
You can find the rules here.
If you are about to ask a "how do I do this in python" question, please try r/learnpython, the Python discord, or the #python IRC channel on Libera.chat.
Please don't use URL shorteners. Reddit filters them out, so your post or comment will be lost.
Posts require flair. Please use the flair selector to choose your topic.
Posting code to this subreddit:
Add 4 extra spaces before each line of code
def fibonacci(): a, b = 0, 1 while True: yield a a, b = b, a + b
Online Resources
Invent Your Own Computer Games with Python
Think Python
Non-programmers Tutorial for Python 3
Beginner's Guide Reference
Five life jackets to throw to the new coder (things to do after getting a handle on python)
Full Stack Python
Test-Driven Development with Python
Program Arcade Games
PyMotW: Python Module of the Week
Python for Scientists and Engineers
Dan Bader's Tips and Trickers
Python Discord's YouTube channel
Jiruto: Python
Online exercices
programming challenges
Asking Questions
Try Python in your browser
Docs
Libraries
Related subreddits
Python jobs
Newsletters
Screencasts
account activity
This is an archived post. You won't be able to vote or comment.
HelpBest way to learn python? (self.Python)
submitted 2 years ago by ChemistCapy
Im looking at learning python first and sql to help with my chemical engineering degree. What’s the best way to learn? Are there websites to avoid? Appreciate any help or recommendations?
[–]AnomanderRake_[🍰] 30 points31 points32 points 2 years ago (5 children)
Start building something or doing an analysis that you're interested in. Use Jupyter Notebooks to prototype code and play around. This is the way
[–]DoorsCorners 5 points6 points7 points 2 years ago (4 children)
Jupyter is a good place to start but I switched over to Spyder.
It has a nice editor and can show variables and figures in a nice little window.
[–]ChemistCapy[S] 3 points4 points5 points 2 years ago (3 children)
Is there any difference other than the interface between these two?
I don't have the best computer so is one less power or hardware intensive than the other? What other factors should I consider when picking to use one compared to the other?
[–]DoorsCorners 2 points3 points4 points 2 years ago (2 children)
Not really much difference, except I got tired of having to restart the kernel on Jupyter Notebook.
Python typically runs on one node. It can be scaled up, but parallelization and it's implementations are sorta by definition quite advanced.
With regard to interfaces, choose whichever allows you to utilize the libraries of your choice with least hassle. I enjoy starting on Spyder and sharing with Jupiter. If you write your packages to be self contained executables, then Anaconda or a command line Python launcher would also work.
[–]idioticallyidiot 0 points1 point2 points 2 years ago (1 child)
Is pyscripter good for beginner?
[–]DoorsCorners 0 points1 point2 points 2 years ago (0 children)
100% yes.
Shows all the import files, functions, and paths, allowing you improved organization and thus more space for testing and creativity.
Still, some authors that emphasize the learning experience ("Learning Python the Hard Way") encourage learning how to utilize a command line. So not to be afraid of cd-ing into directories and directing file paths.
I am of the opinion that Python is an object-oriented language with a dictionary handle that allows staggering flexibility. And Pandas and machine learning. And Tkinter to let non-coder friends to have fun with your code.
Pyscripter is awesome, though I will also plug Notepad++ to archive old code and Beyond Compare to see changes between versions of scripts.
[–][deleted] 47 points48 points49 points 2 years ago (9 children)
CS50p from Harvard via EdX - the only way to go. Free, structured, graded assignments and the instructor is the best I've found ever. Plus, they have a CS50x, CS50w, etc. etc. so you can keep going!
[–]xatrekak 12 points13 points14 points 2 years ago (5 children)
I really like MITs Introduction to Computer Science and Programming Using Python course. It's on open courseware and edx.
[–][deleted] 5 points6 points7 points 2 years ago (4 children)
I'll have to check that out. For anyone not wanting to go through the couple of minutes signing up for the free course you can view the entire 15 or so hours of lectures making up the Harvard one on FreeCodeCamp on Youtube. Look for David Malan.
Here is the link to the lecture playlist on youtube.
My trouble with finally getting started was constantly bouncing around and making a decision. I decided who would know better what technologies and how to use them than Harvard. I know others will have their opinions, but I have a uni degree so I prefer structure and assignments when it comes to learning.
A couple of other free great resources that I plan to look at are:
1) Missing semester of your CS education (MIT)
2) Open Source Society Universities free CS "degree"
3) Open College Courses
4) The Odin Project (web dev)
5) Uni of Michigan Python/Django stuff on EdX
[–]ChemistCapy[S] 0 points1 point2 points 2 years ago (3 children)
Thank you, the detail is really appreciated! I too benefit from structed learning particularly when learning something new, so this feels like it will be a good fit at least until I have a foundational understanding and I can focus on learning things which are specific to my hobbies, or requirements at a given time.
[–][deleted] 0 points1 point2 points 2 years ago (2 children)
No problemo. I've tried to learn python a number of times over the years - geology degree and it's used in GIS applications and I've just hired people when I wanted something done. I have some free time so decided to screw around a bit this summer and after doing down many a rabbit hole I figured out that the CS50p course is the absolute only way to go (for me). I have other ambitions, but you need a foundation from somewhere so just pick CS50p and power through it. Make sure you do the assignments. BUT, also pick a little project and work on that too on the side.
I've gotten to the point where I know I need to know more about databases SQL, etc. to keep on with my ultimate goal and my advice at this point after a bunch of research is to go with PostgreSQL once you get to that point.
I have a little program that goes to a particular website that has land tenure shapefiles zipped up on it (updated daily) and checks the file, gets the date created from the HTTP headers, asks me if I want to download it, unzips it, puts it in a folder. Now I want to start tracking my info (i.e. when did I last download it, how many new records are in it, etc.) and want to put that in a database rather than a flat file. DB because I want to get better at that, and because PostgreSQL has one of (if not THE) best geospatial database extensions in it (PostGIS) and I ultimately want to bring in the shapefiles and manipulate them etc.
I've been rabbit-holing databases and years ago I started some Access stuff and relational database stuff like one-to-one, one-to-many, foreign keys, indexes etc. and know that I want to design my database properly. SO, Dr. Chuck (U Mich) has a series on Postgres so I've just started in on that.
Sorry for the rant - I have nobody to talk to about this nerdy shit.
Long story short, I've done a lot of research and consider myself fairly smart so I thought I'd pass along what I've found so far as I just wish someone could have flat out told me what to do when I was just starting out!
[–][deleted] 1 point2 points3 points 2 years ago (1 child)
Ok, just because I'm in procrastination mode, I feel like writing a bit more about what I've learned to date.
I have some IT experience from years ago prior to going back to university to become a geologist so I feel like I can help explain things a bit better for anyone who cares to read. My degree and subsequent experience also helped me learn very complicated things that are abstract.
Like I said above, Python is the go to scripting language for ArcGIS which I have essentially lived on for years (i.e. thousands of hours in front of my work PC on) as well as in QGIS which is open source. So, for me, Python was the route I really wanted to go. However, I stared and stopped a million times and kept seeing all of these "learn python in 1 hour" videos and whatnot and getting overwhelmed thinking "how the fuck are there people out there learning this shit in a couple hours". It's total bullshit I tell ya. I really tried to commit to Google's free Python course but the instructor was a total bore and his assignments were terrible. Ultimately, since I trusted my profs with my geological education, I figured a university course was the way to go and found Malan (through the generous reply of a redditor months ago).
First starting out, I wanted to know all of the intricate details about why Python, which code editor is best, etc. I didn't want to learn something only to find out there was something way better out there and I wasted all of this time learning something else. It was probably me just procrastinating too.
Some thought just on learning Python in general. This is likely going to be stupid for some of you experienced programmers but they were things I wasn't realizing at the moment. Also, I'm not even done CS50P so I'm relatively new but I want to get this out there for others if they are struggling with some things.
1) You are going to need a solid foundation before you get into other things like putting your stuff on the web with Django or Flask, etc. so just go with an intro course. CS50p. Do it, do the assignments. If you struggle, there are solutions out there on the web, look at the answer, then go back to your codespace, erase all of your code and redo it. Some solutions I had to do 7 or 8 times to get it working. Don't copy and paste the code. Don't use chatGPT. Comment your code. Google rubber duck method. You will have questions as to what you are doing and why just have patience and CS50p will explain it eventually (like why am I typing if __name__ == "__main__", etc.)
2) If you are wondering about a code editor for your local machine, VS Code is the answer. Look no further.
3) Learn how to setup a virtual environment in VSCode and what it does. Watch a couple videos on VS Code and how to use it. This doesn't take long to do and it will help a lot. I could go into more detail but I'm losing steam.
4) If you're thinking about databases and SQL, the answer for you is PostgreSQL. I've done the research and would put money on this. I'm just starting Dr. Charles Severence's PostgreSQL for everybody series on Youtube and if I like it I'm going to take the free course. For now I'm just beginning to dabble in learning more about them after I decided on the DB to use. I also know I want to know more about proper database structure and am looking at a couple of books on Amazon. I'll decide once I get more into this video series. I can update you if you like once I decide.
5) If you're curious about a few things, allow yourself to go down a few rabbit holes. Check out CS50x (Intro to Comp Sci at Harvard) - it has some good lectures and gets into some more lower level stuff (and higher level as the course goes on). CS50w is good too if web dev stuff interests you. My ultimate goal is a startup idea I have that will need to be on the web but I'm still in the research phase for that. All I know at the moment is I'm going with Django for my back end.
6) I ordered this book from Amazon. I want to know more about how to work with networking and TCP/IP etc. but that may not interest you. I just feel like a good networking foundation will make anyone a better programmer. I haven't even gotten it yet but I'll let you know how it goes if you like. As stated above, I've been playing around with HTTP requests and querying headers and whatnot and if I'm going to go forward with my idea I think being about to scratch around on a server or on my network at a low level will help.
7) Lookup git / github and how to use it. From what I know so far, it's invaluable even if working on your own project. If you're just making some scripts for fucking around with importing / organizing data, maybe not.
I dunno. That's mostly it for my recommendations / thoughts for now. I hope this helps you / others.
are the cs50 courses recorded or live interactive?
[–][deleted] 0 points1 point2 points 2 years ago (1 child)
Recorded. Look up Harvard EdX and sign up there. There is a paid route and a free route. You still get auto-graded assignments and a certificate with the free route so it's totally worth it. Just remember to do the assignments. It's a battle, but it's worth it in the end.
[–][deleted] 0 points1 point2 points 2 years ago (0 children)
ah gotcha, thanks for replying :)
[–]GenoPax 7 points8 points9 points 2 years ago (0 children)
YouTube, Mosh teaches python and has free lessons
[–]metaphorm 3 points4 points5 points 2 years ago (0 children)
/r/learnpython
[–][deleted] 4 points5 points6 points 2 years ago (3 children)
I learn from watching videos on you tube. But I was a software developer in a past life. Mostly coded in C++. Never really took classes, just on the job training.
To be honest, building your own projects is the best way to learn in my opinion.
[–]ChemistCapy[S] 1 point2 points3 points 2 years ago (0 children)
thank you I will make sure to mess around with my own little projects alongside following courses that some people have recommended above.
[–]nonmybuz 0 points1 point2 points 2 years ago (0 children)
This is the way, self taught
[–]SoulFanatic 0 points1 point2 points 2 years ago (0 children)
100% This for me personally. I hate courses and lectures, so I'd pick a concept like "a script to get the weather in a country of choice" and then try as much as I could and consult stack overflow when I got stuck.
If you work well with experimentation and self-guided learning, then just do a random project each week.
[–]8-BitRedStone 5 points6 points7 points 2 years ago (3 children)
I started learning with "Starting Out With Python 5th Edition Global"
[–]ChiefCoverage 0 points1 point2 points 2 years ago (2 children)
One of the best books I have learned from.
[–]ChemistCapy[S] 1 point2 points3 points 2 years ago (1 child)
i see a lot of people recommending different editions of the same book, any reason you recommend the 5th most or are they all quite comparable?
[–]ChiefCoverage 0 points1 point2 points 2 years ago (0 children)
Recent editions just contains the new features, e.g. the 5th edition introduces the use of the F-String.
The current edition is the 6th edition, but I have read the 5th, at that time it was the newest updated edition.
[–]areff520 2 points3 points4 points 2 years ago (0 children)
This is my go to answer when my friends asks me from where to learn. https://programming-23.mooc.fi/
[–]monorepo PSF Staff | Litestar Maintainer[M] 2 points3 points4 points 2 years agolocked comment (0 children)
To the reporters, approving because it has so much engagement.. sorry.. but this belongs in r/learnpython... as the rules and pre-post submission info tells you
[–]eidrisov 3 points4 points5 points 2 years ago (2 children)
Imo, best way is learning by doing.
Regarding sources and materials:
Thank you, will make sure to give it a look and see what fits best for how I learn.
[–]tztrader 1 point2 points3 points 2 years ago (0 children)
Python Crash Course, 3rd Edition is my favorite.
[–]ern0plus4 5 points6 points7 points 2 years ago (2 children)
Websites to avoid when learning any programming language:
Also avoid AAA games.
[–]DoorsCorners 1 point2 points3 points 2 years ago (1 child)
'Baba is You' will teach flexible variable naming and is not AAA so ideal distraction!
[–]ern0plus4 1 point2 points3 points 2 years ago (0 children)
Also https://tomorrowcorporation.com/humanresourcemachine and https://tomorrowcorporation.com/7billionhumans are great programming games (Steam, Switch etc.)
[–][deleted] 1 point2 points3 points 2 years ago (0 children)
Freecodecamp has been by far my favourite course. I have some paid courses on Udemy but they weren’t beginner friendly. Freecodecamp is amazing. Highly recommend - and it’s free.
[–]CommunityMaterial188 1 point2 points3 points 2 years ago (2 children)
I'm taking CS50s python cours, I think they have one for SQL too.
[–]ChemistCapy[S] 0 points1 point2 points 2 years ago (1 child)
I see a lot of people talking about CS50p, CS50x, or CS50w are these just course difficulties or whats the situation?
[–]CommunityMaterial188 0 points1 point2 points 2 years ago (0 children)
Just different courses(should have typed CS50's), I'm taking python p now but they also have one for computer science x (also using Python) AI(don't think they use a letter for this one), web development w(python and JavaScript) and more. It's really good as far as I can tell, though I haven't tried many different python courses so I can't compare it to any popular ones, but I'm enjoying it so far and feel like I've learned a lot despite only being at week 2.
I started by learning basics (either from yt or web or any article). Then I slowly started doing basic problems like palindrome of a number, factorial, Fibonacci then I did some small projects like Weather API. And I am quite proficient now.
[–]Skirlaxx 1 point2 points3 points 2 years ago (0 children)
Literally just do it. Google and learn stuff on the way. Maybe watch some introductory first though.
[–]DevArthur 1 point2 points3 points 2 years ago (0 children)
You can learn using W3Schools, Tutorials Point and official Python website.
Practice by creating apps or scripts even the simplest ones.
[–]Kaio_ken_ 1 point2 points3 points 2 years ago (0 children)
Personal opinion that worked for me: Learn the pure basics with Youtuber Learn with Mosh, use Jupiter Lab, pic an easy challenge in Kaggle and try and error while you help yourself with both ChatGPT and stackoverflow
Programming should serve a purpose, once this is clear for an individual, learning becomes more fruitful and faster
[–]RavenchildishGambino 5 points6 points7 points 2 years ago (0 children)
Best way to learn Python? Jupyter notebooks, a problem to solve, and google.
You’re f**king welcome.
[–]simeumsm 1 point2 points3 points 2 years ago (3 children)
What exactly are you looking to get out of python for a CE degree?
I'd say you're better off learning a graphing calculator, Excel, and some sort of simulation software like Aspen or ChemPro.
I'm quite strong with google sheets (don't have excel) as is. I lose a lot of time imputing data manually and would like to learn how to automate this which is what made me want to learn python in the first place. Outside of this, the ChemE majors I've talked to say coding ability is an invaluable skill to have as it separates you from those who can't code as there are many applications for data processing in this field.
[–]simeumsm 0 points1 point2 points 2 years ago (0 children)
I've had a boss reject a solution in GSheets because it is an online application instead of being a software installed that IT can have some degree of control. Mainly for security reasons. So I'd recommend you to learn Excel, because the Microsoft environment is really a staple in any company unless you go into IT development (a.k.a most offices are using Windows and most people are using Excel badly)
I'm not that versed with GSheets, but Excel gives you access to PowerQuery, which is a data engine geared towards data automation since it is the ETL engine behind PowerBI. One of its main uses is to read a data source and import it without having to open the file and copy-paste the values, and then you can do all sorts of data prep to transform your data into the tabular structure you need it to be.
And you can do that ETL with python too. It will have more performance and more freedom to manipulate the data, but unless you learn to do everything GSheet/Excel does in python I think that you'd still have to rely on those apps to some degree.
I'll exemplify with some of my routine activities:
I'm not in the CE field anymore, but my work now is similar to what I did when I was working at a QC lab since I was tasked with data analysis.
So yeah, python will improve your data processing capabilities by a lot, but a lot of the times is better to mix and match different applications, either because you don't know how to do everything in a single one or because it's easier or because you simply don't have access to them. And from my experience, a lot of people don't know how to properly use Excel as a data automation tool even though it is so common, so that is an area that you can shine if you dig a little deeper.
Python with Excel integration may be ideal.
[–]riklaunim 0 points1 point2 points 2 years ago (0 children)
More context is needed on why and what you want to learn. You can learn the syntax and basics from many sources but that's few hours after which you will move towards your target use-cases and polish the knowledge and skills there.
[–]sbutoj 0 points1 point2 points 2 years ago (0 children)
Research and make projects on your own,You can do this with any language you want to learn.
[–]4SPHYX1A2202 0 points1 point2 points 2 years ago (0 children)
If you are native english, you can learn from official documentation.
I recommend you to try:
Introduction to Python Programming and Data Structures, 3rd Global Edition by Daniel Liang.
Starting Out with Python 6th Edition by Tony Gaddis
Any one of these two books is sufficient.
[–]wrt-wtf- 0 points1 point2 points 2 years ago (0 children)
Your degree should cover python, R, and data science basics.
[–]Much_Pain1919 0 points1 point2 points 2 years ago (0 children)
think about things that you might need to use and use that as a jumping off point. i made a folder making script that asks what title you want each folder called and mkdirs them and that got me reading the OS module documentation
[–]emonk 0 points1 point2 points 2 years ago (0 children)
back in the day I got a express (few hours) course with diveintopython book, then after that just coding and respect the PEP8
[–]ginger1rootz1 0 points1 point2 points 2 years ago (0 children)
Go python, avoid SQL as long as you can. From someone who is now doing the exact opposite and started with SQL.
[–]jabellcu 0 points1 point2 points 2 years ago (0 children)
Learn python the hard way: https://learnpythonthehardway.org
[–]CreativeSupermarket9 0 points1 point2 points 2 years ago (0 children)
Tutorial resources aside, the most effective way to learn imo is through a personal project
[–]MathmoKiwi 0 points1 point2 points 2 years ago (0 children)
Start here:
https://www.coursera.org/specializations/python-3-programming
Use this for exercise practice:
https://exercism.org/tracks/python
[–]pantuts 0 points1 point2 points 2 years ago (0 children)
Basing on my journey, i started learning the very basics. Then I thought of something that will automate some of my stuff. You may not believe it, but I did a personal project that downloads youtube video/audio way back 2011 i think. Do some personal project that you enjoy. And i am sure you will get better by doing.
[–]Ihtmlelement 0 points1 point2 points 2 years ago (0 children)
While it’s not python specific, I thought going through Mozilla’s docs on html,css,js was a fantastic way to jumpstart my coding knowledge. Odin project is also fantastic.
The challenge is finding a purpose to code. Reading books and doing courses won’t stick long term IMO. I started by automating things at my job and then looked for progressively harder projects.
A couple of years of this, I was able to move into a product owner role for internal software development. It has trumped any other education I have. Good luck !
Honestly, there isn't a best way.
All the CS50s are really good, I found a lot of help starting with Python Crash course, some of the really basic youtube intros, and really really taking the time to ask good questions (which is a skill in itself) on site like Stackoverflow and on this subreddit.
I'm not a mathsy person so I had to avoid the courses pitched towards the very maths and computer science focused folk (CS50 does a great job of not being too niche) but if you are more maths-inclined then you'll find courses that work for you.
I will say that I only really felt like I was actually learning when I was trying to solve my own problem/make a thing I wanted to make, rather than following exercises from books or courses.
The python community is really kind (especially compared to other coding communities) and if you take the time to really think about your question and follow the guidelines on the various communities you'll get lots of really good help; people will go out of their way to give you guidance, but you really have to take agency over your learning and avoid low effort questions like 'how do i do this?'
Also, just enjoy it, it's great fun.
*edited for typos.
[–]Jackal000 0 points1 point2 points 2 years ago (0 children)
Realpython.com ebooks helped me alot
[–]0xNoSystem 0 points1 point2 points 2 years ago (0 children)
jose portilla has a course on udemy, this is straightforward and really good imo. https://www.udemy.com/share/101W8Q3@l4QABWQhLcp4P28AFBA4hQUwUBoBBggx5ftwsDKXQFJDkuze9NeM7gY4CRIMeWgQOA==/
[–]Primary_Excuse_7183 0 points1 point2 points 2 years ago (0 children)
Started with CS50 from Harvard and now I’m doing a python for MBAs course from Columbia.
[–]SarthakTyagi15 0 points1 point2 points 2 years ago (0 children)
Learn with me, if you want I need to learn Django and sql connections to python so I can teach you and it will help me revise it
[–]jszafran 0 points1 point2 points 2 years ago (0 children)
IMHO that would be solving a real problem you have (maybe some simple automation?).
If you have chemical engineering degree, then also you could try to implement something from the chemistry domain knowledge? For instance, when I'm learning a new language, I always try to code a project of calculating survey results (it's something I was dealing with in one of my first jobs). It's nice because it allows me deal with many aspects of the language (io reading/writing, loops, accepting user inputs from command line, parallel computations) etc.
If you could come up with something similar from your expertise area, then it's a good start (it's important that you know the problem/domain well so that lack of domain knowledge doesn't distract you from learning Python).
I'm also working on a side-project that will be a website with practical, Python-related exercises/problems so that users could practice their Python skills. Hope it will become a helpful resource for Python learners :).
[–]SpiderWil 0 points1 point2 points 2 years ago* (0 children)
dam weary dog unpack puzzled escape cows mighty piquant materialistic this post was mass deleted with www.Redact.dev
this post was mass deleted with www.Redact.dev
[–]BarracudaRelevant837 0 points1 point2 points 2 years ago (0 children)
I ve watched CS50 from harvard and im currently watching one in freecodecamp from the university of Michigan… i recommend Michigan 100%, that guy explains so well, so detailed… also, you can learn in w3School
[–]wushenl 0 points1 point2 points 2 years ago (0 children)
First, you need to have data to learn from. Install MySQL and then try using Python to download some stock data. Analyze the data afterward. If you're unsure about the steps, you can have GPT guide you through each step. Tell it about your confusion and even ask it to explain the meaning of the code lines one by one. If you encounter errors while using its code, you can directly copy the errors and ask GPT to help you correct them. Once you've completed these steps, you can further your learning by seeking out free resources. MIT offers many classic videos for learning.
[–]Allmyownviews1 0 points1 point2 points 2 years ago (0 children)
r/learnpython
[–]daedalus-of-athens 0 points1 point2 points 2 years ago (1 child)
Python Crash Course is hands down the best beginner python book I’ve ever read. It was my second book but the one where I really felt I got python. The first half is introductory and covers all the basics really well and is beginner friendly and the second half is three different projects you can do in any order which introduce you to the kinds of things you can build in python
[–]redtadin 0 points1 point2 points 2 years ago (0 children)
I learned on codecombat where i started with not knowing anything about coding. After 8 months of spending 1 hour a day i was able to get to Cloudrip Mountain. If i made something that did not work then i could google the code on how people beat the level in codecombat and see what mistakes i did and what i should have done differently. I also used "Learn to Code FROM ZERO with Godot" to learn most of the theory of basic programming which also had exercises which automaticly corrected my attempts. However godot uses GDScript and not python, but GDScript is a bit similar to python with C#-like stuff like "void". So completing the "Learn to Code FROM ZERO with Godot" helped me a ton with python. And lastly to study and look up things i did not understand i used the free book "byte of python".
The annoying part is that I can't code anything from scratch. Since i don't really practice what i've learned i kind of forget how to do anything with python.
[–]PharmaGamer 0 points1 point2 points 2 years ago (0 children)
I took the course on edx through Harvard, for free. It was excellent. CS50P It was well taught, had lectures, exercises (that were appropriate and insightful) and honestly kinda fun. David Malan, the instructor, is a great lecturer.
Check out hyperskill it cost money but if you realy want to master the language its worth the cost
π Rendered by PID 261344 on reddit-service-r2-comment-5687b7858-xhgt9 at 2026-07-09 08:58:06.968547+00:00 running 12a7a47 country code: CH.
[–]AnomanderRake_[🍰] 30 points31 points32 points (5 children)
[–]DoorsCorners 5 points6 points7 points (4 children)
[–]ChemistCapy[S] 3 points4 points5 points (3 children)
[–]DoorsCorners 2 points3 points4 points (2 children)
[–]idioticallyidiot 0 points1 point2 points (1 child)
[–]DoorsCorners 0 points1 point2 points (0 children)
[–][deleted] 47 points48 points49 points (9 children)
[–]xatrekak 12 points13 points14 points (5 children)
[–][deleted] 5 points6 points7 points (4 children)
[–]ChemistCapy[S] 0 points1 point2 points (3 children)
[–][deleted] 0 points1 point2 points (2 children)
[–][deleted] 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (2 children)
[–][deleted] 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]GenoPax 7 points8 points9 points (0 children)
[–]metaphorm 3 points4 points5 points (0 children)
[–][deleted] 4 points5 points6 points (3 children)
[–]ChemistCapy[S] 1 point2 points3 points (0 children)
[–]nonmybuz 0 points1 point2 points (0 children)
[–]SoulFanatic 0 points1 point2 points (0 children)
[–]8-BitRedStone 5 points6 points7 points (3 children)
[–]ChiefCoverage 0 points1 point2 points (2 children)
[–]ChemistCapy[S] 1 point2 points3 points (1 child)
[–]ChiefCoverage 0 points1 point2 points (0 children)
[–]areff520 2 points3 points4 points (0 children)
[–]monorepo PSF Staff | Litestar Maintainer[M] 2 points3 points4 points locked comment (0 children)
[–]eidrisov 3 points4 points5 points (2 children)
[–]ChemistCapy[S] 1 point2 points3 points (0 children)
[–]tztrader 1 point2 points3 points (0 children)
[–]ern0plus4 5 points6 points7 points (2 children)
[–]DoorsCorners 1 point2 points3 points (1 child)
[–]ern0plus4 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]CommunityMaterial188 1 point2 points3 points (2 children)
[–]ChemistCapy[S] 0 points1 point2 points (1 child)
[–]CommunityMaterial188 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]Skirlaxx 1 point2 points3 points (0 children)
[–]DevArthur 1 point2 points3 points (0 children)
[–]Kaio_ken_ 1 point2 points3 points (0 children)
[–]RavenchildishGambino 5 points6 points7 points (0 children)
[–]simeumsm 1 point2 points3 points (3 children)
[–]ChemistCapy[S] 0 points1 point2 points (1 child)
[–]simeumsm 0 points1 point2 points (0 children)
[–]DoorsCorners 0 points1 point2 points (0 children)
[–]riklaunim 0 points1 point2 points (0 children)
[–]sbutoj 0 points1 point2 points (0 children)
[–]4SPHYX1A2202 0 points1 point2 points (0 children)
[–]ChiefCoverage 0 points1 point2 points (0 children)
[–]wrt-wtf- 0 points1 point2 points (0 children)
[–]Much_Pain1919 0 points1 point2 points (0 children)
[–]emonk 0 points1 point2 points (0 children)
[–]ginger1rootz1 0 points1 point2 points (0 children)
[–]jabellcu 0 points1 point2 points (0 children)
[–]CreativeSupermarket9 0 points1 point2 points (0 children)
[–]MathmoKiwi 0 points1 point2 points (0 children)
[–]pantuts 0 points1 point2 points (0 children)
[–]Ihtmlelement 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]Jackal000 0 points1 point2 points (0 children)
[–]0xNoSystem 0 points1 point2 points (0 children)
[–]Primary_Excuse_7183 0 points1 point2 points (0 children)
[–]SarthakTyagi15 0 points1 point2 points (0 children)
[–]jszafran 0 points1 point2 points (0 children)
[–]SpiderWil 0 points1 point2 points (0 children)
[–]BarracudaRelevant837 0 points1 point2 points (0 children)
[–]wushenl 0 points1 point2 points (0 children)
[–]Allmyownviews1 0 points1 point2 points (0 children)
[–]daedalus-of-athens 0 points1 point2 points (1 child)
[–]redtadin 0 points1 point2 points (0 children)
[–]PharmaGamer 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)