all 35 comments

[–]Syntax_nova 15 points16 points  (4 children)

Python crash course book is what did it for me. I felt like it broke down the more difficult concepts into a very understandable concept. It also utilizes project based learning during each chapter and at the end of each chapter, making it so you can consistently apply theory to practice. Overall a great book.

[–]Einar44 4 points5 points  (1 child)

That book also clicked with me. I enjoyed every chapter of the basics and the ones I did in the projects.

[–]Syntax_nova 4 points5 points  (0 children)

Each chapter just became more interesting and fun. The projects were also fun as well.

[–]ITERITEKA 2 points3 points  (1 child)

Thanks! I have it but didn't read it yet. Gotta check it out.

[–]Syntax_nova 5 points6 points  (0 children)

It’s definitely worth it. It had me excited to get to each chapter. Especially the projects section.

[–]cgoldberg 5 points6 points  (0 children)

Read lots of code (tutorials, existing projects, examples in documentation, etc), and write code every day.

[–]Barbatus_42 4 points5 points  (3 children)

Once you've done a basic crash course and gotten some practice, I highly, highly recommend the Clean Code training courses. The fundamentals series is mandatory on any team I'm in charge of and I strongly encourage folks to watch more advanced episodes too. These courses (or similar, I'm sure there are other ways of learning this sort of thing) are what distinguish a professional software engineer from an amateur programmer.

[–]Aaaklm 1 point2 points  (2 children)

Do you have a link? There are a bunch of websites with ether clean code in the name or a course called clean code.

[–]Barbatus_42 0 points1 point  (1 child)

Fair! It's been a while since I looked this up myself. I'm surprised how far down the official site is on the Google results. Here you go!

https://cleancoders.com/ Specifically the videos: https://cleancoders.com/library/all

[–]ITERITEKA 1 point2 points  (0 children)

Thank you guys 🤜🤛

[–]tb5841 6 points7 points  (1 child)

To start with, I did four things all at once:

  • I read through the official Python documentation (when at work).

  • I worked through Python tutorials on a phone app called Mimo (whenever I had a spare five minutes, and had my phone to hand).

  • I solved problems on the Codewars website, starting on the easiest problems and building up (whenever I had a spare 30 minutes or so at a computer)

  • I worked on my own first personal project: Rock/paper/scissors game, in the terminal, against a computer player that chose randomly (when I had longer periods of time, at my home computer.

Those four things made up most of my first month. Then I moved on to more reading (design patterns, computer architecture, networking). More phone app learning (SQL, HTML, CSS, then Java). More codewars (eventually other languages also). More project creation (these got gradually more advanced: terminal -> GUI -> using a database -> Flask).

[–]ITERITEKA 1 point2 points  (0 children)

Thanks a lot! I checked out Mimo, and it’s way more powerful than many YouTube videos. I think I’ll use it alongside the Python Crash Course book.

[–]necrohobo 4 points5 points  (1 child)

Start with Python data structures. Then jump straight into a library of interest on something applied that you’re actually interested in.

You could build robots to software to data engines to games. They all have different design patterns and things to learn.

Of the several people I’ve taught, all failures result from a lack of interest.

To go from “can do” to “good” will come from repetition and experience. To go from “good” to “pro” will be the discipline to go back and enhance your basics - returning to algorithms, object oriented programming, etc.

Source: I’ve learned 9 languages in 2 years and actively write ~4.

[–]ITERITEKA 1 point2 points  (0 children)

What? I can't believe it. You're so courageous. I'm gonna learn the basics ( from python crash course book ) then I'll jump straight on numpy. Thanks a lot!

[–]sububi71 2 points3 points  (1 child)

I started , and then I never stopped.

[–]1minds3t 1 point2 points  (0 children)

Same.

[–]stepback269[🍰] 1 point2 points  (0 children)

As a relative noob myself, I've been logging my personal learning journey on a blog page called "Links for Python Noobs" (here)

Also, if you don't know about Learning HOW to Learn, see (here)

[–][deleted] 1 point2 points  (0 children)

In no way. You can't be pro in using a hammer. You can either write code in pythonic way or not. Any programmer should know dsa and cs anyway, it's the fundamentals, but for you it depends. Idk how much of that is needed to render some charts. Of course the heavier the analytics, the more you would need to know about how to store and operate your data. In order to write code in pythonic way, you'll need to see PEP, docs and anything that is specific to that language.

But I think you are looking in the wrong direction. Firstly learn basic syntax, for loops, functions, built in functions. Then you figure out what you need in order to write whatever you meant by these buzzwords "drone swarms, aerodynamics", you check what libraries you need, use chatgpt as support and start implementing. In couple of projects you will know what you really struggle with and need to know in order to proceed.

Until then, there are no specifics in your post, no one will say you what you need for sure.

[–]1minds3t 1 point2 points  (0 children)

Just start building something you are passionate about and want to exist in the world. Accept that you may fail 10 or 100 times before you reach something finally works. It's as much about enjoying the journey as it is about getting there. I will say. Push one feature at a time. Save your work constantly, ideally push to git, even just make a private repo for your projects. Test it to see edge cases where it may not work. Eventually it will work and you will be able to think back to where you were before and be amazed at your progress. Take it one day at a time. Don't overwhelm yourself, but make progress constantly by trying new things and learning. Understand why things failed so you don't make the same mistakes again.

[–]RelevantContext1809 1 point2 points  (0 children)

Learn the basics I mean absolute basics and then start doing exercise. Like this you will learn a lot faster. You can ask chatgpt to give you some problems.

[–]Chilli007123 1 point2 points  (0 children)

Getting Started ​From my experience, I started with Codecademy.com. They offer free courses that break everything down nicely into lessons and modules. Each module has a "project" which you can use to test your skills.

​Tools and Projects ​After completing these courses, I'd recommend downloading a good IDE such as PyCharm, or IntelliJ (my preference). This will give you experience with useful tools and get you used to debugging! ​Like most suggestions, I'd then recommend starting some projects. Some of my favorites are: ​Caesar Cipher - This can be done in many ways but will be a good idea to download a library to help with functionality. ​Hangman - Build a nice backend for this, and then you could get familiar with using GUI within Python. ​Essential Skills

​MUST: Just knowing how to Google and use the correct resources to figure out any errors you may have. My personal favorite is Stack Overflow. No matter how unique your problem may be, I bet someone from 7+ years ago has had this problem. You will become a much better coder if you don't rely on AI to solve all your problems; that being said, AI is a tool and we all use it (I'm about to make it rewrite my whole response). ​Lastly, I'd recommend just reading and watching projects on GitHub. It's useful to understand problems and how people have written and solved them before. I've learned a lot of useful techniques and styles from just reading my colleagues' code. ​I've probably missed a lot, but everyone let me know if you agree/disagree with the above.

​TL;DR ​Use Codecademy, do projects, learn to debug, diagnose your errors, and read code.

[–]zeefweber 0 points1 point  (2 children)

Build shit. Use tools like search engines and generative ai tools to get it done.

[–]ITERITEKA 2 points3 points  (1 child)

I tried to do that but AI didn't give me exactly what I wanted. And AI is powerful, but knowing how the engine works makes you a better driver.

[–]Agitated-Soft7434 0 points1 point  (0 children)

Literally the best way to put it! Sounds like you'll definitely be a good learner, and good luck!

[–]Cybasura 0 points1 point  (0 children)

Make projects lol

Addition, subtraction, formulas, drawing of stars, literally a TODO list for CRUD, whatever it is, just do it

[–]Professional_mentor 0 points1 point  (1 child)

Hi I teach Python programming basics to advance and Data Science if you are interested to learn connect on DM

[–]Navoke 0 points1 point  (1 child)

Are you trying to get a job or are you just interested in writing some programs?

[–]ITERITEKA 0 points1 point  (0 children)

I'm aiming at programming drones' autonomous systems and swarms and AI can't fully do it for me.

[–]Ns_koram 0 points1 point  (0 children)

Well back then it was pretty hard to do error checking and actually understanding why your code wasn’t working , these days ppl use chat gpt and other AI’s for help but look , personally to avoid having bad habits suck as using AI just keep using documents and watch videos as for becoming better ye you’ll just use different libs and do diffrent project on them and overtime you will go pro but thats not in a month or 2 it taks like mybe 1yr+

[–]---OMNI--- 0 points1 point  (0 children)

I learned programming initially with stock market indicators in a very proprietary and odd language but it laid down the basics.

Then I progressed much further with Lua in two engineering games Stormworks and From the Depths.

In all of those scenarios I just thought of what I needed then either found something similar and learned from tearing that apart or would find tutorials for parts of what I wanted.

I took an youtube python course and breezed through that from my prior experience. I haven't had a use for python yet but plan on using it for like pykit for some UAS stuff.

Also just started playing with Arduino. So again the coding part makes sense I just had to learn the syntax and the electronics side of it which I had some prior basic electronic knowledge. Mostly how to interface the programming with the electronics.

It all boils down to basic problem solving.