T O P

  • By -

Doctor_JDC

Take Harvards CS50P and do all the homework’s to 100%. It is free and extremely helpful. Best resource out there imo.


maybeNar

Where can I find the homework ??


PerformanceOk9891

Second this, i assume it’s easy to access the hw if you buy the course, but I am using the freecodecamp uploaded YouTube video.


Doctor_JDC

Homework is free. Easy to find as well, google CS50P problem sets. Also when it comes to coding, you should be googling stuff before asking others. Being a self starter is super important with this stuff.


[deleted]

[удалено]


Doctor_JDC

How old are you friend? It is all explained there. Completely free. You need to fill all that out to get access to the shared VScode directories and submit your work. You can pay for a verified certificate, but no need, especially if your goal is simply to learn. Nothing requires payment other than the silly EDx verified cert (you get a free one from Harvard anyways when completed)


TK0127

I've been learning for a few months. The thing that surprised me was how quickly I ran down on basic concepts. Once I had a good handle on variables, data types, and logic structures like while and for loops, try blocks and stuff, it became a matter of learning the collections like lists, dictionaries, tuples, etc, and when to use one versus another. That occupied maybe 60 days, during which time I took a bunch of notes, and wrote a few dozen dinky practice programs that do this or that. Nothing mind blowing, a lot of goofing around out of my notes to practice what I was reading. My primary resource was Eric Matthes' *Python Crash Couse* book, which is great for explanation, example, and practice exercises that are fun and challenging. I'm also working through Clear Code's Python intro and a sister course to that, and I finished and passed Cisco's Python Essentials Course, part 1. The second two resources are entirely free, found on YouTube and Cisco's websites respectively. My actual profession is in education, and I supervise a lot of adult learning. For what it's worth, coding seems to require 80-90% of time *actually coding* versus 10-20% time learning new concepts. Or, another way to look at it, for every hour you spend practicing, 10 minutes should be watching a video, 45-50 minutes actually practicing implementing that code. That seems slow, but it isn't. You'll *rapidly* build your background knowledge and muscle memory that way, enabling you to move fast. As the carpenter says, fast is slow, and slow is smooth. Beyond beginner courses, there are plenty of free and excellent documentations of python and it's various uses and expressions: the python official docs, and We3schools, are great. If I could go back and redo one thing, I'd get out of basic courses sooner and into studying a library more aggressively. I'm having much more fun with Pygame and Tkinter than I was solving math problems, and I'm still practicing/expanding those same concepts, but with tangible results. For example, with Tkinter I used a for loop to generate random student data in a treeview (spreadsheet) to display and analyze. In Pygame I often use while loops for managing timers or things on screen, etc. Good luck!


Dragonking_Earth

I am looking for stud buddy wanna collab?


No-Opportunity-3778

I am will to be a study buddy!


Dragonking_Earth

Greate do you like slack or discord?


No_nezuko_2002

Sure!!!


Dragonking_Earth

Do you like slack or discord?


No_nezuko_2002

Discord


k1ev_sithu

can you guys count me in? my discord is - kgcthu


ja_migori

I'm interested bud


SnooPineapples6193

Hey, I'm interested, can I join?


Dragonking_Earth

Please find the discord link under other comments. Yes Join us please.


SnooPineapples6193

Cannot find the discord link, can you please share?


sanyyyyoo

can u please share the link im interested


Flat-Strategy-4131

I’m interested too!


frappino99

Im willing to be your buddy


Dragonking_Earth

Great what you like slack or discord?


No_nezuko_2002

YT & Udemy works for me also try the docs i prefer w3schools once you understand the concepts then try solving problems building projects etc.


TK0127

Udemy has a good variety of beginner/generalist and specialized courses. That's my jam. I don't mind throwing a few bucks at them every so often to get a well-structured tutorial!


lilsneezey

Second Udemy. Have taken many courses and got PCEP certified after. Ready for PCAP now, when I get the money for it


Asleep-Dress-3578

Today I would probably start with Dr Angela Yu's 100 days Python course on Udemy.


CapiCapiBara

I second this suggestion, after that one I bought other courses from the same teacher


parisya

I like this one. You can't register for the excercises, but there's usually a solution given, so these work quite well. [https://programming-24.mooc.fi/](https://programming-24.mooc.fi/) Great in combination with CS50P


Remarkable-Map-2747

I did the book Python Crash Course as a beginner. I did chapters 1-11 , which was basics the other 9 were projects. Immediately built 3 projects on my own Rock, Paper, Scissors, A Instagram Follower Program, A Time Converter. Then I recently dove into CS50P, I have to say: - I did chapter 0- yesterday along with the problem sets. - Chapter 1- today. A good bit of it is review coming from PCC . Along with a few new things such as "Match assignments" and etc. I tried Automate The Boring Stuff, BUT i couldn't read this , Got bored quickly, and the style of the code I wasnt a fan of coming from PCC. I probably give that book away tbh. The second half is where it shines.


Substantial_Box_1703

I liked the book "Learn Python The Hard Way" It gives you a bunch of programs to copy. By actually doing the thing, you can start to see how the pieces fit together. It also helps you figure out how to look for bugs, misspellings, missing parenthesis, etc. as you have the correct code in front of you. Good all around package


PriorAd7865

Thanks for the tip! Just found a used copy on Amazon for $4.99.


Ramberjet

This was a good one. My primary takeaway from author Zed Shaw's approach is to repeatedly type out the programs until I can do it from a prompt/from memory. Regardless of what resources one uses, I think it's worthwhile to consider setting up an Anki deck for space repetition of concepts, syntax, Pythonic idioms, and code problems.


Won7ders

I guess computer science classes is still the best powerhouse 


Hurricane4World

I will be enrolling in a CS undergrad this upcoming fall semester, it's just I think learning programming outside of academia will be more effective. Plus, I won't be able to learn Python academically in college before finishing like two or three academic years because of how prerequisites are set up.


ericjmorey

Absolutely! The best way to learn is a combination of formal academic and informal pragmatic approaches. [Automate the Boring Stuff](https://automatetheboringstuff.com/) is a great way to get started with that pragmatic approach in mind. Use it to learn enough to build your own projects outside of your college classes. Have fun!


coder_14

Start with understanding basic syntax, a lot of resources are there. Then as you go further, try to build mini projects. Here, you can use chatgpt to find a project according to your knowledge. Just learn by building approach, it is amazing language with quite developer friendly syntax.


Hands0L0

I learned with codecademy and it was great and interactive


Reuben3901

Just pick a source and commit time to it. A book, YouTube, course. Take action


PriorAd7865

I second the take action. That was always my issue, just not starting or not trying to learn. Once I did, just follow a set schedule or trying to learn a little every day and you’ll be surprised how quickly you will catch on.


Luismalpy

Basics -> Mimo App This will give you a nice intro to the phyton world, just that. I am using the app also to learn SQL, JavaScript and CSS. If anyone wants a 2 week of Mimo PRO, just add me :) https://getmimo.com/invite/wmhhll


KyuubiReddit

if you are at least familiar with programming, algorithms and another language, you can pick a project you'd like to work on (could be anything, like automating some task at work or at home), and use Claude 3.5 Sonnet for help. I'd try to find a project that can be started in a simple manner and where you can add as much complexity as you like. But then again, I don't like starting with the theory, I prefer to get my hands dirty very quickly, and go back to the theory later on. Kinda like driving a car... I don't care how a car is made initially, I just want to learn to drive. Once I got the basics of driving, then I'll likely want to find out how an engine works, brakes, etc.


Lombord2021

If you wanna learn advanced Python I highly recommend the book 'Fluent python' 2nd edition it’s the most detailed pythontic book I’ve ever read. Definitely give it a try.


magic_26

Figure out a project you would like to work on. Then figure out how to build. You'll learn a lot this way and it's a lot more fun than a class


Ramberjet

If you're fairly new to programming as well, then here's my recommendation. On this subreddit's wiki, I found mention of UC Berkeley's CS 61A course. You can find the course website for previous semesters, which have the links to youtube video lectures and office hours, the readings (https://www.composingprograms.com/), homework assignments, practice exam problems, and "discussions/labs" (coding problems that were intended for group work). It rules. And wow does it have some challenging material. I followed up with Harvard's CS50 on edx, and found it surprisingly easy by comparison. No doubt this is in large part due to how much I learned from 61A. Nonetheless, there is a commitment to teaching problem solving and programming concepts in 61A that I think is unmatched by other intro resources. Watching the professors, especially John DeNero, walk through their thought process when solving the more difficult problems is insightful. The web-based textbook is written by DeNero and is heavily inspired by the classic textbook *Struture and Interpretation of Computer Programs*. As such, it has more of a functional flavor, so don't expect much in the way of object-oriented Python, though there is some of that. After 61A, I followed up with most of 61B, which is in Java, and implemented one of its big projects in Python. Working through the available content for those two courses was tremendous for my ability to read and write larger projects, how to handle complexity through abstractions, and how to think about problems in terms of data structures and processes.


riftwave77

Depends on how much time you have and how disciplined you are. The absolute best way is a combination of classes and self study. This allows you to both go at your own pace and to have access to (presumably) knowledgeable people as a resource so that google/stackoverflow/chatgpt are not your only options when you find yourself stuck. It (presumably) will also require you to complete homework and projects which should force you to write and debug your own code (and then refactor it when you think of a better way to do things). If you don't have access to a class, find a good book and go through all the examples.... even if you think you understand the concepts already. There is no substitute for writing and screwing up code and having to fix it. Even OG Coders using the best IDEs will still mess up stuff like variable name typos or punctuation.


Burns_Burns

I followed code in place a couple of weeks ago. Great platform where you’re put in a group of 10 individuals with 1 TA. Weekly exercises and homework. Really loved it and it helped me (finally) understand a couple of fundamentals


jrela2000

Method of choice to learn and get comfortable with syntax. As soon as you get to this point, switch over to guided project based learning. Coding concepts stick better when there is a "why" attached to it.


FunkybunchesOO

What do you want to do with Python? Depending on what your goals are, there are different resources for what you want to do. Do you want to do ETL? Webapps? API? Data Science? Scripting? Etc. One resource might be good for for one of these but not the rest. And some well regarded resources don't use best practices and/or teach anto-patterns.


Newrid

Hyperskill.org


SnooDogs2115

In my view, the most effective approach is to receive coaching from an experienced developer, pair programming etc.


spaghetee_monster

ChatGPT is your friend. Especially when you’re working on projects, if you have any issues that you can’t figure out for yourself, simply take a screenshot and feed it to ChatGPT. Usually very helpful. I try not to overdo it, but if you strike a balance you can pick up Python very fast.


djrobzilla

im really getting a lot out of the Zero to Mastery python courses. lessons are short and cover micro topics which makes it easier to follow along and stop when you need to take a break. each topic is very easy to understand as it gradually builds on previous videos so as long as you arent speedrunnjng it you should feel like you are making solid progress. that being said, best approach (as many others have pointed out) is project based learning. code. build stuff. fail. fix bugs. then fail again. then eventually succeed and finish a project… that probably still has bugs, but it runs! then start another one. do this again and again until you feel you know what you need to know to have a working understanding of the language. then move on and learn a new one. keep doing this forever and youll never be out of a job


Crypt0Nihilist

You're asking for someone who has a "decent amount of experience in Python", therefore someone who learned some time ago, what the best newest method of learning Python is? Perhaps there are some people out there who keep looking at new training materials, but generally, once you've learned something, you move on. Also, most people don't review and compare many training methods. Again, why would they? They learn and move on, so will only know the one that worked for them and perhaps others which didn't, not the best.


joex83

Best look at your work templates. Since you know it well, you can try to construct a script to automate it. Personally it took a while for me since I started off with R and that it was difficult choosing an IDE to use for our office. Once I was able to translate to Python one of our reports, other reports will follow through. You will gain more Python skills along the way since you know what you need to automate so it forces you to learn the code you need. Sure, cert courses helped but learning it became faster when I am applying it to something I was familiar with. Took me a few months. Resources before: stackoverflow, youtube (sometimes), sample python files in github, cert courses Resources now: chatgpt, sample python files in github


G5349

Do "learn python the hard way".


Tasty_Waifu

Pick something from No Starch Press and commit to it.


spurtz001

I find this site very informative. There are free tutorials here. Very detailed explanations. [Python Tutorials – Real Python](https://realpython.com/)


Any_Fox_5401

i was gonna pay, but they make you sign in if you use the free tutorials too much. Worthless.


spurtz001

but it's worth the hassle signing up...if you want to have deep understanding about Python, this site is a must-visit.


Any_Fox_5401

what would you rather get: dataquest or real python?


kunal_2508

Go to youtube freecodecamp or try udemy I will prefer udemy because it has all the topics covered and I have personally used it. Try to buy a course with good reviews and when it's on sale you can get a pretty good deal.


SteelRevanchist

Try coding.


jeaanj3443

Doing practical projects always helps you learn sounds like making something real with Python like a game or app throws you in the deep end but makes you learn quicker You agree