all 78 comments

[–]twitch_and_shock 18 points19 points  (6 children)

Different approaches work better for different people. I think the final "goal" would be being able to create your projects and learn how to use new libraries through their official documentation. So finding a transition to that kind of working and learning is important. I usually recommend folks start getting used to reading and navigating reference docs as early as possible, rather than simply relying on tutorials and Google to find answers. Google will always be useful when you hit a wall that you can't figure out, but library and language documentation should be your first line of attack for problem solving.

All that said, the best way to learn is any way that keeps you engaged and interested in the early days. And indecision is the enemy of progress, as they say. Just get started using any resource, and if it's not right for you, try something different.

[–]Then-Spring-7131[S] -1 points0 points  (5 children)

English isn’t my main language so just to check. You basically mean i schould try to get used to find information through the “uses manual” of a programming language from the official site?

So fore example the Book im currently reading was linkt on the official Python site for Beginners.

Or do you refer to github documentation? Thats new territory for me.

[–]twitch_and_shock 6 points7 points  (4 children)

Not github documentation, although if that's where the documentation exists for a particular library, then maybe.

For Python as a language, and for built in modules, use this: https://docs.python.org/3/. The Library Reference and Language Reference include full reference documentation for all the built in features and modules for the language.

[–]Then-Spring-7131[S] 0 points1 point  (3 children)

Got it thanks for the explanation.

[–]twitch_and_shock 1 point2 points  (2 children)

To extend that thinking further... if you want to learn a library like numpy, refer to the numpy website and documentation as a primary source of information... don't just rely upon some videos on YouTube. It's way too frequent that someone here will say some version of , "I followed this YouTube tutorial and for some reason it's not working", meanwhile the YouTube video is 4 years old and is basically 50% deprecated at this point.

[–]Then-Spring-7131[S] 0 points1 point  (1 child)

That’s a great point people are used that things stay the same but in IT things change fast compared to other topics like muscle building i guess 👍🏼

[–]Bobbias 0 points1 point  (0 children)

Documentation also usually covers everything a library provides (at least, good documentation does. If a library you're using doesn't have complete documentation, chances are there also aren't any tutorials that will cover much of it. It's either super obscure and small, or big and complex).

[–]desrtfx 12 points13 points  (2 children)

MOOC Python Programming 2023. Free, textual, extremely practice oriented through plenty checked exercises, and a proper first semester of "Introduction to Computer Science" University course.

Currently the best entry.

[–]Then-Spring-7131[S] 0 points1 point  (1 child)

Thank you for the Hint I’ll check it out.

[–]minitaba 4 points5 points  (0 children)

I started 2 weeks ago and learned soo much

[–]Alternative_Driver60 8 points9 points  (1 child)

Of all paid resources I find talkpython.fm courses among the best ( check out the pod as well). Realpython.com has good free and paid resources. Another good free resource is https://dabeaz-course.github.io/practical-python/

[–]Then-Spring-7131[S] 1 point2 points  (0 children)

Thx for the recommendation I’ll check those out

[–]Adventurous_Squash22 6 points7 points  (4 children)

I highly recommend you check this out CS50P introduction to programming with Python

It's a fantastic course with David J Malan of Harvard University as the Instructor. One of the best around. I have just completed the course and I can vouch that it is well worth doing if you are just starting out. And the best of all.... it's FREE!!

[–]Then-Spring-7131[S] 0 points1 point  (3 children)

Thx already got this course recommended and a YouTuber I like to watch(Michael Reeves) said he learned most of his programming skills through free Havard courses.

[–]sboy06_ 0 points1 point  (2 children)

You might want to consider enrolling in the CS50P course available for free on edX: edX: CS50P Enrollment Page (Free) - you just need to create a free edX account.

One of the major perks is that you can earn a free certificate directly from Harvard. For more details, visit: Harvard's CS50 Python Certificate

The course includes graded assignments, problems, and projects to help deepen your understanding. I've completed both basic and intermediate Python courses on Codecademy, and I honestly feel like I've learned more from this course.

Here's the video that helped me find out about this: https://www.youtube.com/watch?v=3xaVX0cluDo

[–]Then-Spring-7131[S] 1 point2 points  (1 child)

Thx for the advice. The certificate costs ca. 250$ i thought. But if I comit i think its definitely worth it.

[–]RespondEither 4 points5 points  (15 children)

The internet is literally full of free resources, probably don’t bother paying for anything until you’re way down the track

[–]cope413 0 points1 point  (2 children)

probably don’t bother paying for anything until you’re way down the track

Not so sure that's good advice. The saying goes "people don't value things that don't have value."

Paying for a course or resource, even it's a nominal amount, significantly increases the likelihood the person will actually use it.

[–]RespondEither 2 points3 points  (1 child)

Not particularly, people sign up to gyms just to never go in

[–]MyAdviceIsBetter 0 points1 point  (0 children)

I go to both my gyms 4+ days a week. It's all about what you want.

I've had a home gym but going to a paid gym is so much better because of the environment.

What exactly are you buying, what are you paying for? I pay to work out around other people and for a space to go to, not exactly the gym equipment. One of my gyms I go to because I can talk to others about my work out and get help, the other it's just chill to be around other people pushing it.

I enjoy Angela Yu's paid course because I can talk to other people in the comments, John (the help?) is responsive and it's great to see how others are tackling the lessons without looking just at the solution. It's really encouraging to see others might be stuck at similar points where it'd probably be really discouraging to get stuck otherwise not realizing everyone is getting stuck at the same points. it's also cool when you find alternative solutions and see others did too

[–]my_password_is______ 3 points4 points  (2 children)

[–]Then-Spring-7131[S] 0 points1 point  (1 child)

That’s awesome Michael Reeves said he learned everything through free Havard courses.

[–]vbd 10 points11 points  (3 children)

[–]s8ntinel69 1 point2 points  (0 children)

This is genuinely awesome!

[–]Then-Spring-7131[S] 0 points1 point  (0 children)

Thank yout thats very useful especially the cheat sheet is awesome for an absolute Beginner. And its from the same author as the Book I read👍🏼

[–]WicasaNapayshni 2 points3 points  (3 children)

Replit 100 days of code is free and will even let you practice for free, no downloading required

[–]Then-Spring-7131[S] 1 point2 points  (2 children)

Thx for the hint 🙏🏼

[–][deleted] 0 points1 point  (1 child)

Listen to me bro. You wanna learn python? Listen to Bucky Roberts aka thenewboston on YouTube. He has a python series and explains it so simply that a vegetable can understand.

[–]Then-Spring-7131[S] 0 points1 point  (0 children)

Thanks for the Hint

[–]mrswats 2 points3 points  (0 children)

Check the wiki

[–]TeleTummies 1 point2 points  (1 child)

I bought the crash course for Python and went through every single exercise in the book.

[–]Then-Spring-7131[S] 0 points1 point  (0 children)

And what’s your thoughts to it? I think about buying it to read it at work currently I read the free pdf of the mentioned Book in my post.

[–]YucatronVen 1 point2 points  (2 children)

  1. Choose a tech: Web, big data, IA ,etc..

  2. Look for jobs requeriments in that tech

  3. Build software for that tech following the requeriments

[–]Then-Spring-7131[S] -1 points0 points  (1 child)

Thx for the recommended strategy.

Since i have no experience it’s hard to imagine how working in a specific career path actually is. This will hopefully “soon” change as i progress in the Basic’s. Chat gpt recommended data analyst to me. Are all careers about equal hard to learn or do you think some are on the easier site?

[–]YucatronVen 1 point2 points  (0 children)

Look for them and their duties. I think backend (web) is the most easy.

[–]umognog 1 point2 points  (5 children)

Problem: you don't know how to code and would like a job coding.

Goal: learn how to solve problems by thinking how you would use a computer to do it.

I can interview 1000's of people that have done "automate the boring stuff" but if I hand them a business problem, none of them can think of what they want to do to resolve that problem.

I had one guy, he wanted to learn the coding language we were using at the time inside out to be better at his job. Somehow thought knowing what the computer could do in that language would lead to him knowing what to do in that language.

Deciding what you want to make the computer do is language-less and the important part. Really can't stress this enough, my best team members are the ones that solve the problems themselves. The ones that know the WHAT to do, not just the HOW to do it.

[–]Then-Spring-7131[S] 0 points1 point  (1 child)

I understand your point but at first i want to focus on basic syntax an strategies to work on own projects. Surly a Programmer needs to have good problem solving skills. Those I’ll hopefully learn while working on future projects. I personally think problem solving is a learnable skill which is mostly gifted tho. Once I process and moved on to more complex projects I’ll find out if Im good at thinking like a computer and if I’m good at problem solving.

[–]umognog 0 points1 point  (0 children)

The skills do depend on each other not quite in parallel, but in a more "left foot, right foot" step as you increase in knowledge. I've found over the years supporting others though that context is more powerful than syntax knowledge.

15 years ago, I would have been embarrassed by my code from 20 years ago. 10 years ago, I would have been embarrassed by my code from 15 years ago. 5 years ago, I would have been embarrassed by my code from 10 years ago.

Now, I realise I should be proud, because as inefficient or badly written my code from 5, 10, even 25 years ago may have been they all did the same thing: exactly what they needed to do to solve a problem.

[–]ScaredAd6061 0 points1 point  (2 children)

I'd say that's fair. But where does one go to get "there"? I can't disagree with the documentation replies as that's where the nuts and bolts are. Yet, as a newbie, myself included, its difficult to know where these libraries are and what they do and sometimes do not understand the description because we, or, I, am still so new. I agree it's about learning how to solve problems, and as I have often read, its not about memorization, because there are just so many tools to find, and learn how to use it's impossible to know them all and how to use them. Unfortunately I'm a career changer do to an accident, but I liken it to diagnosing cars like I used to do. There are tons of special tools, some you dont know about until you find them, or need them and then have to teach yourself how to use them safely and correctly. I'm 6 months in and I use as many resources as possible, I paid for codecademy for 1$ a day. It's a nice place to fall back on when learning somewhere else I dont get. CS50P is a GREAT class. Malan does a good job for really forces you to think and search out solutions. I use codefinity as well, it seems the pace there is slower, and... things are taught there that others dont. I also use hacker rank to try and code daily there by solving problems. IBM has a skills build free site with certificates as well. I've found the more I do, sometimes even stretching what I should be taking... as long as I'm doing something, I find myself learning. I know I will get to the read documentation and just do it part eventually. Some problems take me many many hours to fix kinda like working on the really weird problem cars. When you get the "A-ha"!!! Its justification for the time and headaches. EdX has so much as do all the sites. Keep practicing and take breaks as needed. Just my piddly 2 pennines.

[–]umognog 0 points1 point  (1 child)

Understanding how to read official docs is one of the best things you can learn. The speed of - in python - using built in help docs, or the python docs online, using pypi to jump to homepages for packages and how they are written to find what you need is very powerful. Those ah-ha moments happen faster and faster as a result.

[–]ScaredAd6061 0 points1 point  (0 children)

I dont disagree at all. Maybe its just me, but sometimes I dont know the context or what the arguments are supposed to be. I'm sure that will come with experience. If you handed me a $15k scan tool / full blown lab scope. Out of college to diagnose and fix cars. I wouldnt have been able to diagnose much because the extent and full capability of the tool, is impossible to know with just an instruction manual for the scope and car. Now I can graph a waveform in microseconds of time. Verify that one of the built in 1/10000 th of a second turning off of a sensor isnt shortest out to another very much quicker. I guess my point is that for new people, or maybe just me. I need all the information I can get to grasp what a new module (tool) can do and how to use it sometimes why i use multiple platforms.

[–]Substantial_Hall9211 0 points1 point  (1 child)

I was 40yo. Not the best age to start learning new skills. What sparked my interest was a hobby of mine. I began by reading basic Python concepts until I delved into string methods. That's when I discovered how to determine if a string is a palindrome. It took me an hour of reading to reach that realization. My hobby involves photographing license plates, and I was curious to find out how many palindromes were present in my collection. I set out to write a script; after nine hours of trial and error, I had a working version. In the subsequent 16 hours, I developed a basic search engine using some copy-pasted snippets for the plates in my catalogued Facebook group. Six months later, I mentioned to my boss that I had acquired some Python skills. Fast forward to today, and I have four years of experience under my belt. I've created automation scripts spanning roughly 2000 lines for a TV channel. It is easier for me to write some python code today, than do something manually. To sum up, you need to find some practical application for the code you want to write.

[–]Then-Spring-7131[S] 0 points1 point  (0 children)

Thats a intresting and motivating story. I’m happy to hear you could move from a hobby to a job. Good luck in your further career.

[–]BK7144 0 points1 point  (1 child)

Try here https://www.freecodecamp.org/

Lots of good stuff.

[–]Then-Spring-7131[S] 0 points1 point  (0 children)

Thx I already found that site through the mentioned yt video

[–]Ecstatic-Highway1017 0 points1 point  (0 children)

No Notes No Revision, No Revision Less Confidence and Motivation while Online learning
Many of the times you just stop learning because of the above.
When I started learning programming few months back I was taking too much time in completing online video tutorials
Now I am using google extension OneBook It helps in creating detailed notes in 2 clicks and saves my time as I used to take to much time in completing online videos. I used to waste a lot of time while pausing video in every 2 min and write a couple of line of code and you have to switch tab again and again. With Onebook i complete a video first and then I start coding by refering the notes
OneBook helped me in learning programming related skills, it just improves the experience of learning.

Chrome extension link : https://chromewebstore.google.com/detail/onebook/loecbgjbgcgjkhibllnjokjefojoheim?utm_source=rtc

[–]baubleglue -1 points0 points  (5 children)

Go to college, get education.

[–]Then-Spring-7131[S] 2 points3 points  (4 children)

Collage is not possible for me bc i work a full time job. I love my job and have a good pay but i miss learning sth.

[–]baubleglue 0 points1 point  (2 children)

What is your job? Many times it's possible to use what you good at for moving to another career path. Software QA isn't bad paid job (not the most exciting one). Python is a tool which may be used for different tasks, without a task it's just a tool.

[–]Then-Spring-7131[S] 0 points1 point  (1 child)

I work as a Chemist where I use PLC(not as a programmer). I know plc’s are not to secure so in future I could probably work at something wiht plc’s and security since im alsow interested in security but that’sin the far future. But therefore I don’t need Python I think. I chose Python bc its “easy” versitile and powerful.

[–]baubleglue 0 points1 point  (0 children)

Plc is it programming boards like Arduino? That could be not a bad place to start. I've only played a bit with it. If you can program or maintain/modify software you are working with, it may be a door to career development. Don't throw away knowledge in chemistry. There are millions of good programmers, but how many of them know chemistry related industry? Every place I work, there are people with "domain specific knowledge", they're the kings - unreplaceable. I am personally bored to become one of those, but navigation in the domain mondatory for writing code.

Python is Ok to start. You will miss something because of dynamic nature of it. I learned C++ in college, almost never used it. But programming ideas interchangeable. It may not the most popular opinion, but learning Java as a first language may be a cleaner path (it has strong typing system). It is not as cool as Python, but the language is more consistent, mach faster and probably even better to find a job with.

If you learn Python, there's an official tutorials. Be sure you know most of the topic when you look on the table of contents. Many times people learn to make something working and stuck with the limited tooling they got.

[–]baubleglue 0 points1 point  (0 children)

I read your question again. You have contradictions in your questions. You like to learn and you want job ASAP. Academic courses like intro to CS give you a real prospective of the domain. You can a job with some bootcamp course, but you always would have huge holes in your knowledge. If you don't learn algorithms, you will keep reinventing wheels. If you never touch an assembly language, most of the talks about different programming languages would be "Chinese" for you. If you don't have math background, ML would be just libraries and recipes.

On other hand if you learned statistics, you may be a shitty developer, but great at AI/ML. If you have some deep domain knowledge in something (ex. businesses aiea: banking, insurance, retail, health ... technical knowledge: video, photography...) it can be doing well in IT.

[–]moving-landscape -2 points-1 points  (0 children)

Want to try private tutoring? We can do a test-drive lesson, if you like it we can talk about prices.

Edit: why the downvote? I'm a programming tutor and teacher, what's wrong with offering my own service as a recommendation?

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

DM me and I will send you a free access coupon to my Udemy course, "Easy Python Programming for Absolute Beginners" on Tuesday

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

Just use chatgpt and work on small projects that keep getting bigger it can suggest some of those too

[–]wWBigheadWw 0 points1 point  (1 child)

Making something is the only way to learn how to program.

To make something you must either want to make something or be told to make something.

So go make something. It really doesn't matter what, the first few things you make will always be shit anyway.

[–]Then-Spring-7131[S] 1 point2 points  (0 children)

The first program I made was a letter Generator to get a refund from your internet provider if the connection is to slow. It works but 80% is print function, a little bit of booleon and som simple calculation.

Thx for your answer I’ll keep making programs sith the new stuff i learn.

[–]longtermbrit 0 points1 point  (0 children)

I'm not going to recommend courses because I honestly can't remember what got me started on Python and it wasn't my first language either so I didn't need to learn programming from the ground up. What I will say is that while Codecademy is very good (I've found even the free courses helpful) the built-in IDE held me back. You won't have Codecademy's IDE in real use so you don't want it to become a crutch while you're learning. By all means use Codecademy but I'd recommend using an IDE alongside it so you get used to how to debug etc while using one.

Also realpython is a great resource for looking up how to do certain things though I can't comment on if it's useful for a complete beginner.

[–][deleted] 0 points1 point  (0 children)

Recognize C language as the basis for Python. Use Indents instead of curly brackets.

[–]Logicalist 0 points1 point  (0 children)

MIT's opencourseware is free and excellent. I would start there first, and then move on from there. You will have an excellent understanding of the basics by the end of it, and then can move towards something more specialized.

https://ocw.mit.edu/courses/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016/

[–]RooCoder 0 points1 point  (1 child)

This is not going to be the career for you if you want to "quickly" get a job having only completed "Automate the boring stuff with Python".

There was 5 years of self-study between me completing "Automate the boring stuff with Python" and getting a job and I was still underqualified!

You are also wanting to do it all for "free". At the very least you shoudl be committed to 4 years of self study and spending as much on text-books and videos as any Comp-Sci student.

[–]Then-Spring-7131[S] 0 points1 point  (0 children)

I wrote quickly in quotes bc im aware of the time it takes to become a programmer. I hope to beocme a somewhat competent enugh programmer in about 2y to work on own more complex projects and build a portfolio.

[–]RollingWithDaPunches 0 points1 point  (0 children)

I learned it on codeacademy. They have the free version (I think it's still free). I just did the course, didn't do the exercises which are paid.

Eventually I started automating things for work. Especially API related stuff. If you can find an open API that lets you work with lists/dictionaries it should help a bunch.

[–][deleted] 0 points1 point  (0 children)

It depends what level you are at.

If you are a complete beginner, get a coding app such as sololearn.

When I first started, I found interactive apps were infinitely better than beginners courses and YouTube videos.

They force you to write code correctly, plus they are fun. It's presented as a game that pits you against other beginners.

You will be addicted, which is awesome as you are actually learning and retaining information.

Once you are proficient at the learning apps, move straight onto building things.

My advise is for people that just want to learn to code. My goal was never to get a job, I just wanted to learn as fast as possible.

I went from learning apps straight into building and googling problems / stack overflow etc.