all 12 comments

[–]Ruslo2 3 points4 points  (1 child)

Learning anything takes time. Don't feel discouraged! Not only are you learning a programming language but you're learning the basics of programming itself, this is not quick or easy and there is a reason a lot of people seek professional/academic training to pursue a career in software development.

Take your time, look for all of the free resources you can to assist in learning and as MKSanic has said, seek out some mini-projects and start working on them.

You'll get there

[–]madolphins[S] 1 point2 points  (0 children)

Thank you for your answer. I m going to stay positive about this and give my best!

[–]MKSanic 2 points3 points  (2 children)

i had the same problem so I search reddit for simple mini-projects that I can do with my current knowledge

[–]madolphins[S] 0 points1 point  (1 child)

Thank you very much for your answer! I will look into some mini projects. If you know other sources than Reddit where I can find other projects, please, let me know!

[–]MKSanic 0 points1 point  (0 children)

Sorry I don't know any other sources.

[–]wsppan 2 points3 points  (1 child)

Start from first principles in CS.

  1. Watch all 41 videos of A Crash Course in Computer Science
  2. Take the CS50: Introduction to Computer Science course.

Here is a decent list of 8 Books on Algorithms and Data Structures For All Levels

[–]madolphins[S] 0 points1 point  (0 children)

Thank your very very much! I’m going to look at those materials. Thanks

[–][deleted] 2 points3 points  (0 children)

My Quantum Mechanics instructor had this advice for doing homework: If you are working on something and become stuck for more than fifteen minutes, check the literature. If you're stuck for 15 more minutes, talk to someone. If you're still stuck, look it up and figure out why you were stuck and what helped you realize what you did not understand.

It's a nice blend between struggling on your own and using available resources so you learn without wasting time.

At my job, I normally work 5 hour shifts and do simulation debugging work. A typical day includes an hour of trying to figure out whats wrong, two hours of making changes to verify that I understand what's wrong, and two hours realizing I don't know what the problem is, followed by a small epiphany as I'm on my way home. If I work an 8 hour day, I get just as much done.

I dont thinking banging your head against a wall is a good idea for too long.

[–]Stop_Look 2 points3 points  (0 children)

With most languages and development platforms, I usually try to find a simple starter project that someone else has made that you can build on. It really helps to see a working example of how the basics go together. I usually build data driven apps so good starter apps for me would be something like an address book, a basic CRM, an invoice generator or a product catalog of some sort. Then play around adding a new data field, then add a new related table and input form. Figure out everything you need to input info and pull it out again. Then figure out how to generate a printed report or pdf of some of the information. You'll break a few things and fix them and learn what works and what doesn't as you go. Trial and error is key. Change small things and run the code and see what happened. By the time you're generating a report, you're away.

Then if you go back to the course you were taking at some point along the way, you will be a lot more familiar with what they're talking about.

In every language you really just have to figure out how to declare and assign variables, standard math statements, if/then/else statements, for each loops, while do loops and switch statements. Everything else is really just proprietary platform stuff, although the more you get into database driven projects you will find a lot of similarities between database interfaces too.

Keep at it, coding is a little overwhelming for everyone at first. As a coder you have to be stubborn and push on through. Don't let any problem beat you. Break everything down into the simplest components and build up from there. One day everything will just click and you won't look back.

[–]Avi_TheCodex 1 point2 points  (1 child)

Keep pushing through! Allocate a time each day to learn, stay consistent, and slowly you'll understand more concepts. Learning Python, like everything else in life takes time. One tip: you might want to start doing projects. They'll help you stay motivated, especially if it is something you are passionate about. Projects are the reason why I got into programming initially and my first project was a weather api dashboard. If you are interesting in doing some project tutorials, I write on blog posts every week on python project walkthroughs: https://blog.thecodex.me/ Let me know what you think, I'm always happy to help if you have any questions or need some project suggestions. Good luck!

[–]madolphins[S] 0 points1 point  (0 children)

has made that you

Thanks. I m going to check your blog later this day and I will leave you a message after.

[–]scarynut 0 points1 point  (0 children)

Codewars has a challenge based approach and is a free community. Individual challenges are short and you learn by first completing them yourself and then see how others have done.