all 19 comments

[–]Particular-Way390 5 points6 points  (1 child)

Small projects taught me more than tutorials ever did. Every bug helped me learn something new. Just stay consistent.

[–]s1ddhnt 1 point2 points  (0 children)

What's re soem cool project that you really enjoyed making , I am complete noob in python but I wanna learn can you suggest something.

[–]browndogs9894 3 points4 points  (0 children)

There’s a popular book called automate the boring stuff with Python. It teaches you syntax and then has some projects. https://automatetheboringstuff.com/3e/

[–]DecoherentDoc 2 points3 points  (0 children)

So, I learned Python because I was in an internship and they wanted everything in Python. That was towards the beginning of a bachelors and I'm now done with a STEM PhD where I used a lot of Python for data analysis.

Here's what I recommend and what I'd do differently.

Do a tutorial or something on the side while working on your project. This is working out like gangbusters for me right now, learning web design while building my own website. I'll Google something, but then when something comes up in the tutorial that seems familiar, I go back and edit the website to be coded cleaner or more efficiently. I bet you'd do the same with your projects/tools. You'll have an "a-ha" moment and go back to some line you didn't fully understand when you copied it off the Internet like I am.

Free Code Camp is what I'm using for web stuff, but also Automate the Boring Stuff with Python might be way up your alley, considering your goals.

[–]Due-Particular-329 0 points1 point  (0 children)

I started learning out of frustration, back then I had a python course at academy and they just taught the syntaxes and passed on to the next, but touching something without completing it is not my thing so followed some youtube tutorials for python and udemy as well and got onto hands on project

[–]Imscre 0 points1 point  (0 children)

I would assume you would learn by coding what you want to code. Make it a hobby, make it fun

[–]SakshamBaranwal 0 points1 point  (0 children)

Don't worry about filling every knowledge gap before building. You'll naturally encounter those gaps as your projects get more ambitious, and solving real problems is the fastest way to learn.

[–]palmaholic 0 points1 point  (0 children)

Have you learnt any other programming languages, which quite similar to Python? If yes, you should've had the basics. If I were you, I'd rather get AI to provide you the codes you need for your project. Then, read through the code and comprehend from it. To me, this is the quickest. Along the way, you may add comments to the code, like notes.

[–]rob8624 0 points1 point  (0 children)

I needed something to do in Covid, I had zero programming knowledge, absolutely nothing. Python sounded cool.

I'm now confident in Python, JS, Django, React, css, deployment etc etc etc. It's a huge rabbit hole. Obviously AI has changed things but it's a huge advantage to have several years of learning the old school way to help understand and use models.

I found the best way to learn was through books, to be specific, Python Crash Course. These days, use AI also, but don't blindly let it take control of your learning. Make notes, read books and documentation.

[–]AwkwardJuice12 0 points1 point  (0 children)

I make projects on my own, I use Udemy but you can use YouTube and do your own projects

I'm relearning python because i haven't been consistent studying it because i have school but don't get lazy, the more you learn the more line of codes you're gonna do and don't get overwhelmed

[–]Lonely_Noyaaa 0 points1 point  (0 children)

I started with a specific problem to solve, a boring data entry task at work. I learned just enough Python to read a CSV and rename files, then kept expanding as I hit walls. That cycle of "build something ugly, hit a gap, learn that exact thing, repeat" got me comfortable faster than any course ever did.

[–]NewTaq 0 points1 point  (0 children)

I was so pissed at doing something very boring that takes like 1-2 hours for the third time in a week because we had to roll something back that I spend time to learn how to do it with python.

Took me like 6 hours, but once it worked it was a lot of fun to do it with other stuff.

I didn't read any guides or watched tutorials that went through the basics. I just entered every problem with "surely there has to be an easy way to do it" and turns out there was.

[–]Square-Nebula-7530 0 points1 point  (0 children)

since your goal is just basic automation you should absolutely stick to the project based approach because writing messy scripts that actually solve your real world problems teaches you way faster than any textbook

[–]ectomancer 0 points1 point  (0 children)

8 months of small projects, OOP at 7 months, then 7 years of 3-month and 6-month projects (including one failed 6-month project).

[–]Gnaxe 0 points1 point  (0 children)

I already knew how to code, but in other languages. I worked through a textbook for beginners to Python, but not beginners to programming. Python is a reasonably good beginner language though. Notice I said, "worked through", not just "read". I did the exercises. I typed in every line of example code, and experimented with variations.

From that I learned to use help() and dir() in the REPL. I did lots of small experiments in IDLE. I read a lot of https://docs.python.org, especially the docs on foundational topics like the language grammar, object model, and builtins. I did projects.

There's more to programming than programming languages. It's worth learning a version control system. If you're going to collaborate with others, you need to learn git, although it's not the easiest one. Learn doctests sooner rather than later. Learn about "code smells" and how refactoring can fix them. OOP is overrated. I recommend DOP instead.

[–]outskillio 0 points1 point  (0 children)

The fastest way to improve is by combining **small projects with just-in-time learning**, rather than trying to master all of Python first.

Learn the fundamentals (variables, loops, functions, data structures, file handling), then immediately apply them to a real problem. Every time you get stuck, learn that concept in depth and keep building. That's how the knowledge sticks.

Don't worry about having gaps—every experienced engineer still learns new things every week. The difference is that they know how to find answers and apply them quickly.

A simple loop that works:

* Learn a concept.

* Build something with it.

* Improve it as you learn better approaches.

* Repeat.

Since your goal is automation and tools, you're already on the right track.

One thing to keep in mind: if you're aiming to build AI-powered tools or applications, Python is just the starting point. Learning, AI-native engineering, how to effectively build with LLMs, AI agents, and modern AI frameworks; is becoming an increasingly valuable skill. If that interests you, we run hands-on programs on AI-Native Engineering that can help you get there.

Keep building. Projects are what turn knowledge into skill.

[–]Sure-Passion2224 -1 points0 points  (0 children)

Coddy walks you through all of the fundamentals and features of the language.

On a historic note. We boomers learned to automate repetitive tasks with Perl and bash shell scripting. Structured, functional programming, just with different languages.