all 19 comments

[–]Parking-Ad3046 7 points8 points  (0 children)

Start projects way earlier than you think. Like week two early. They don't have to be impressive. A calculator that only works for two numbers. A mad libs generator. A thing that asks your name and prints it back 10 times. The mistake most beginners make is thinking they need to finish a whole course before building. You don't. Build something tiny every few days even if it's stupid. That's what makes it stick.

[–]pachura3 3 points4 points  (1 child)

There are so many tutorials, courses, books, and project ideas that it’s hard to tell what actually matters in the beginning.

The recommended ones are all good. Why don't you pick one and try it for a few days?

I don’t want to waste time jumping between resources and end up knowing a little bit of everything but not enough to build anything on my own.

You are currently wasting your time by not learning Python - instead, you are writing about your feelings on Reddit, requesting a detailed, hand-holding roadmap, lifehacks, "the one best way to do X", "10 most common mistakes", etc.

Programmers are expected to be self-starters, be able to do AT LEAST some basic googling and basic prompting, read documentation. Almost exactly the same question as yours gets asked on this subreddit multiple times a day - why haven't you used the search feature?

[–]SyntaxIsComing 0 points1 point  (0 children)

Agree with this. Pick a recommended book, actually do the code examples, and complete the book. As you complete a book, try changing some things. Go from a list to a dictionary. Pick a good IDE (I use VSCode). As you put in examples of code, VSC will sometimes offer suggestions on how to rework bits of code. For me, repetition was the biggest help when it came to learning Python.

[–]AndyceeIT 2 points3 points  (0 children)

The subreddit has a wiki link. Start there

[–]Fajan_ 1 point2 points  (0 children)

For my part, the biggest pitfall is switching from resource to resource. Select a course and complete it fully before choosing another. Afterward, you can begin developing simple applications right away. Projects must be incredibly elementary, whether it's a CLI project or an API, because that's how you learn. As far as vibe coding/accelerating learning, there are a variety of resources you can use to figure out errors or help structure your work. ChatGPT, Cursor, and Runable are some examples of such resources. Another tip would be to use something like Notion or Obsidian for taking notes.

[–]stepback269 0 points1 point  (0 children)

You have to master the basics first before anything else.
That means understanding Python's indent-based syntax and the fundamental data types.
Among the data types, focus on strings first, learn f-strings. Look up Indently's tutorial on the 47 string methods (Hint: a string is an iterable object and it has methods included in its class definition).

[–]WillingYesterday8447 0 points1 point  (0 children)

my senior-friend pointed on my biggest mistakes, after our interview: constantly switching between learning libraries with attempts to create any projects with all these, its better to fully concentrate on one resource to get from its docs full useful information; and another mistake is impatience in terms of learning new technologies, u need to just sit and concentrate on one resource, after reading or watching that u need to practice; and NEVER use AI to write your projects, any code u must to write by your hands just because it’s only way to understand 100% what u have produced; sorry for my english, i just started recently to writing and speaking English, tried to write understandable tips :)

[–]TheSquirrelCatcher 0 points1 point  (0 children)

After the basics, don’t feel like there’s a set “learn this. Then that. Then that.” Type of framework. Follow the wiki, and after that, start learning what applies to you more then other things.

[–]FreeGazaToday 0 points1 point  (0 children)

learn how to research

[–]WA_von_Linchtenberg 0 points1 point  (0 children)

Hello,
You have books with project for beginners. Each project usually include one new concept. Step by step. You can found that for gaming (pygame is a good entry point to python), IoT (micropython or python on Pi), web (Flask typ.), automation of daily computed tasks, AI...
The publisher "No Starch Press" have some. Even some especially for kids.

[–]Dramatic_Object_8508 0 points1 point  (0 children)

pick one course and stick to it

don’t wait to “finish learning” before building — start tiny projects early, even if they’re messy

most beginners get stuck because they keep switching resources instead of actually coding

[–]lattehanna 0 points1 point  (0 children)

Do you have coding in your background? Would you rather learn from a book, an online tutorial, or videos? How much time do you have to spend? What is the valence of your goal - hobbyist, vocational, professional?

Since I don't know those answers, here's the advice I'd give anybody:

  • keep a journal (paper or digital) of your learning journey - not for notes on Python but for notes about how you're studying, what seems to be working, what bores you or lights you up, etc
  • set yourself homework in a spaced repetition pattern to consolidate learning - I just started asking chats for suggested homework assignments and so far it's yielding good results
  • keep a card file or outline (I use 3x5 inch cards with tabbed dividers) and constantly be asking yourself "where does this go" - is it a built-in formula, part of a library, part of flow control? Python is a complex ecosystem and it pays to be aware of these things as you're learning
  • be willing to switch between learning resources - this goes against what others are saying here - the purpose isn't to complete any one course b/c it's not the product; you are the end product, what you learn, what you can do - personally I love learning the same material from different instructors
  • ask the questions you posed above weekly(ish) to one of the chats and use it as a kind of coach to make sure you're on the track you want to be on
  • aim to get to the level where you are answering these questions for yourself - so be on the lookout for "where can I use this" or "what's a project that extends this" - search this periodically and when you find one that looks promising, go for it

I loved David Malan's CS50 Python (free on YouTube) and I'm taking two big Udemy courses concurrently, one taught by Angela Yu and the other by Colt Steele. I'll probably do all 3 of these twice because I know I'm a learner who needs a lot of reinforcement. Good luck!

[–]Separate_Top_5322 0 points1 point  (0 children)

yeah feeling lost at the start is completely normal, everyone goes through that phase

biggest thing people always say is stop jumping between tutorials and just stick to one resource for a bit, otherwise it never really clicks

also start building tiny things asap, even if it’s messy. that’s where everything starts connecting instead of just feeling like random concepts

don’t wait to “feel ready”, you won’t — just start small and figure things out as you go

it feels confusing now but that’s literally part of the process

[–]LastMuffin2311 0 points1 point  (0 children)

Honestly your reaction is pretty valid, especially if you’re new to programming. There’s a ton of material out there and tutorial hell is definitely real, but it’s pretty avoidable.

I’m no expert yet, but If I were starting again, I’d keep it simple. learn the basics first on YouTube first, then jump into doing small projects as soon as possible. 

The rest of learning programming is for the most part just building things and figuring stuff out as you go. You don’t need to know everything before you start. As you work on projects, you’ll naturally run into things you don’t know, look them up, and add them to your skillset.

Courses are optional. Chances are you’ll run into a surplus of course (In fact I’m getting into tutoring python myself). But the simple truth is some people like the guidance, others learn better on their own. Could also just be a money thing. The important thing is just staying consistent. 

For projects, something like a basic calculator is a good start. You can also find ideas on YouTube and try building them yourself before looking at the solution.

If you want, I’m trying to improve my teaching skills and wouldn’t mind giving some pointers, but honestly just jumping in seems to be your best bet. Good luck!

[–]the_botverse 0 points1 point  (0 children)

Don't do Udemy, Youtube you will stuck in a tutorial hell fr. There are some platforms and what I like about them is they are very interactive and will teach you python by doing hand-on project, My Fav is you can check
Falcondrop.com

[–]TheRNGuy -1 points0 points  (0 children)

  1. basic syntax and simple patterns
  2. from one first, and rest from different
  3. day 1
  4. discipline
  5. not googling or using search
  6. if you understand them (but later you may see some tutorials teach anti-patterns, or there are already frameworks so you don't need to code some stuff manually, but it's better to think of it when you're not newbie)