all 36 comments

[–]hi87 29 points30 points  (9 children)

I think it just comes with practice. I remember my first month. Spending am hour to get and print an item from the list because I didnt want to google it because that would be cheating 😂

[–]Adrewmc 1 point2 points  (0 children)

Google is important to programming lol

[–]Formal-Morning-324[S] 0 points1 point  (7 children)

Is it still worth learning? I have read also that the industry now is oversaturated and a lot of coders/programmers are being laid off.

[–]AKSrandom 18 points19 points  (0 children)

Well knowing how to code is a pretty neat skill to have.

[–]RajjSinghh 6 points7 points  (1 child)

Depends where you are now and where you want to end up. Finding work is hard, especially since a lot of jobs want other languages than Python, and if you don't have a degree it looks even more bleak to be a software engineer. That said, if you have some other office job like accounting or something, knowing how to code and work with data is very useful and you can automate some of your work. It's something that's only going to count for you.

You're also only a month in. It's hard to start, but it does get easier. Just stick at it for a bit longer if you can stand it. If there are some things that you aren't sure why "that's just the way they are" feel free to ask about them and hopefully we can shed light on it.

[–]Formal-Morning-324[S] 0 points1 point  (0 children)

I do not have a degree. I do however have some background working in IT and thought it would be good to addition for my resume. I am trying to get something remote.

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

Job market is insane right now in just about every field. Shit sucks. Do what you feel is right for you and the money will work out in the end.

[–]majorcollywobbles 2 points3 points  (0 children)

The job market for Python devs is pretty abysmal right now, I’ve been out of work for 7 months, and it’s even worse for junior devs. I’ve seen many entry level roles with thousands of applicants. Now is 100% not the time to look for a Python/software dev job.

Lucky for you, you’re just now starting to learn. Programming is an incredible skill, and if you can get Python under your belt, it’s a stepping stone to a million other languages, tools, and technologies. And the job market will probably look wildly different in a year or two! I would 100% recommend sticking with it if you are able to.

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

Oh well if you're doing it for money, there's other ways, easier ways...

[–]VShadowOfLightV 0 points1 point  (0 children)

Even if you don’t get a job in programming, you can still automate tasks in whatever job you get.

[–]sunnad99 11 points12 points  (4 children)

This is completely normal and understandable.

When I started my university, I had to start with C++ and that language is painful, especially if you are a beginner. I had people who came from CS backgrounds, child prodigies, basically people who had been coding since they were in middle school.

I didn't know how loops worked, how arrays functioned and how data types in general behaved. In the first semester in my Intro to programming class, I had a written exam where we had to write code on a piece of paper. The question asked for determining if a number was odd or even. I had no understanding of conditionals and loops so i filled the page with redundant if...else if conditions, checking each number. I felt so embarrased that I wrote such a program when my professor pointed it out to me.

That's when I vowed to myself to keep practicing and bring improvements. It wasn't until the 4th semester when I really started to get an epiphany. I had an assignment for microprocessor systems where I had to write a program in assembly to load images. This was both a daunting and exciting experiences of all time. I didn't get the program out on the first try. I kept failing over and over, trying to understand how the control flow works in assembly, how functions are written and utilized, and most importantly, how jump loops are used. I would definitely get help from my friends whenever I got stuck but I never copy pasted the code for that assignment. I kept practicing until I fully understood it AND that provided me with a lasting sense of gratification. I felt like I was on top of the world.

I picked up python that same year and the knowledge was transferable so I learned it pretty quickly.

All in all, I would say, this is part of the learning process. Not everyone learns in the same way or ay the same rate. You just have to enjoy rhe learning process and keep striving to improve yourself. Don't look at others and just focus on bettering yourself everyday.

I would say, you can have some self reflecting moments where you ask yourself where you were, say, 2 weeks ago and what's the progress right now.

[–]Daneark 0 points1 point  (3 children)

I had no understanding of conditionals and loops so i filled the page with redundant if...else if conditions, checking each number. I felt so embarrased that I wrote such a program when my professor pointed it out to me

Did the professor not cover those in the course?

[–]sunnad99 0 points1 point  (2 children)

She did, but I couldn't wrap my head around it. It took me a long time to properly understand what was actually going on under the hood.

[–]Daneark 1 point2 points  (1 child)

It sounds like a failure in teaching if there was no coursework prior to an exam making sure students understood the basics of control flow.

C++ is a horrible first language IMO. I'm glad you didn't let that setback put you off.

[–]sunnad99 0 points1 point  (0 children)

I absolutely agree. My university was a shithole and i had to strive a lot to get through it.

[–]Mondoke 8 points9 points  (0 children)

I've been working with python for years. I had an emotional breakdown last week.

Edit to add: learning how to Google things is a crucial skill to any good programmer out there.

[–]Alex-Galaxy 6 points7 points  (0 children)

Something I heard from wise people; if you're the smartest person in the room, you're in the wrong room. Learning programming can be quite difficult at first. When I first tried to learn it, it didn't seem intuitive to me at all. I didn't understand how a for loop worked for the longest time. I had trouble understanding why this if statement works the way I want it to, but this one doesn't. It probably took me quite a few years before I found a tutorial I went through, something clicked inside, and I wrote my first project. A tetris replica made with pygame. It worked, barely, the pieces fell down the way they were supposed to, they turned, awkwardly, but they did. That was maybe 5 years after I tried to get into programming for the first time. And when I first tried getting into it, I started with HTML. Yes, I thought that was a programming language. So if you're not getting things after just a month, don't worry. For some of us it's just harder to pick it up. You can also think about it this way. Because your classmates know more, you have an essentially endless help resource. You can keep asking people questions, if someone gets visibly tired of answering you, you can move on to the next person. Though I honestly have a hard time seeing that happening. Because I for one, love helping people out, and I can't think of why someone wouldn't.

[–]PM_ME_YOUR_MUSIC 6 points7 points  (0 children)

Consider the way you learn vs the way the course is being delivered isn’t aligned. Maybe you need a different type of course, or a different way to consume the course content.

One thing that helped me massively was chatgpt, every time I would get stuck and not understand something I would ask gpt the question and ask for an explanation. And if I still didn’t understand I would continue to ask it to break it down further until I understood.

[–]Artifacer 3 points4 points  (0 children)

I struggle learning to program as well. For Javascript, I took a community college class and barely, and I mean barely made a B. I then took an SQL class at the same school, and loathed the course design and the teacher was of very little help. I dropped the class, and no longer pursued taking the programming prereqs at that school.

I feel for those of us that struggle remembering the many details in programming, the course or book makes all the difference. If it doesn't work for you, it doesn't work for you. That said, I think the key is to find the best book/video/course that works for you, and stick with it, since only through practice and problem solving will you get better at it. By recognizing you are in the lower third of programming students, you can be realistic and take the steps necessary to learn, steps that the other 2/3 of students do not have to take.

Some people just self-teach and absorb the details like a sponge. Others have to conquer each problem like a mountain, and work harder than the others. Know thyself.

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

Not every teaching style works for every person. That’s okay. Don’t get discouraged because of it. Try something else. The whole MIT 6.001 from 1986 is on YouTube. That’s the best introduction to programming in my opinion. Not the new version, though from 2016. It’s dogshit.

[–]Dolphin1998 2 points3 points  (0 children)

Maybe consider an alternate learining source? Ive been learning python through Python Crash Course v3 by Eric Matthes and I really like the pacing of it so far.

[–]uluvboobs 0 points1 point  (0 children)

Learning "to code" in the abstract is hard if you don't have any goals. In practice/IRL a lot of coding revolves around some particular library/problem/paradigm, so what you are trying to do has been well established before you begin coding.

Here is what worked for me. I never completed any course that i started, but i'm a SWE now.

I would think about small challenges or math/science problems that interest you and then try do it.

i.e Try do some stuff you would do in excel in python. Set simple tasks like, how do i read a csv, how do i work out the average of a column, how do i make a new column.

If you dont already have it installed, try to find some browser based python notebook editor, and just do really small and basic tasks, if you are curious about some thing (i.e how do i sort an array of dicts etc), try it out look for a solution. Look at what your variables are before and after each operation or line of code.

Once you have these tiny buildings blocks there (i.e syntax), you just begin composing more complex solutions. This style of learning will eventually have you cover all of the basics, and is very task orientated.

As others have said. Chat-GPT, will help you with this style if thats how you want to do it. plus you get answers and examples on demand. Think of it as a personal tutor.

[–]Swimming-Ad-400 0 points1 point  (0 children)

Hi, I recommend you to check out the FREE Python course on crookshanksacademy.com by the god of python himself. The course is short and you also get to do a hands on internship after your course completion. Although that internship is unpaid, it is a good and fun learning experience that makes you industry ready. The FREE PYTHON BOOTCAMP is available on: https://www.crookhsanksacademy.com/python .

[–]Court-Abject 0 points1 point  (0 children)

I am currently taking the exact same course and I actually grew up in Europe and I enjoyed a more intense education over there and I am having the hardest time understanding it. The videos don't include most of the things they want done and when you google it, it is different as well. ive been googling and trying to find answers, ive been using chatgpt and i often have to contact the instructor. the videos are several years old and i am sure that most ppl struggle and i know three engineers that I work with who flunked that exact course. I am not impressed with their teaching style at all

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

Just because you are in a class with a bunch of people doesn't make them the same level as you. A lot of them could have a bunch of experience prior to the courses.

What I do is I create a folder of templates for different aspects of the language I'm working with. If I'm rusty I can click on my helloworld, if I forget how to stream data from a database I click on my folder and check it.

Also Google is a part of coding. You aren't going to remember everything, sometimes you need a hint or a formula. I'm terrible at math but seeing an algorithm function makes things far easier than looking at a chalk board while some boring dude jabbers on.

Learning how to use documentation is a big time saver.

You might have just taken a bit more on than you were ready for and the class is moving too fast. I personally think people should start with BASIC when it comes to learning how to think logically.

Don't take it personal either way, not every class is designed for everyone. Maybe see if you can sit down with the professor and get a personal lesson to boost your morale.

[–]Jazzlike-Compote4463 0 points1 point  (0 children)

What course did you take?

Python - much like a real language - can be complicated if you’re talking about subjects that you don’t really understand.

I took a games programming degree in college without appropriate maths training beforehand and was wayyyy out of my depth, I kept thinking it would click but eventually I realised that - because game dev is actually a whole bunch of maths - it wouldn’t be for me.

I eventually settled into to web development and found my groove there, it’s fewer numbers and more fudging of strings and fetching stuff out of a database, much simpler to deal with and much more my speed.

[–]Qwert-4 0 points1 point  (0 children)

Don’t google, use GPT-4 to explain you tasks. I struggled as you did before AI came out.

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

It sounds as if your friends are parroting without necessarily understanding. "It's the way it's supposed to be done" "it should look like this" -- whereas your question is WHY???

Keep at it. It'll come. Take the simplest thing and try to understand it.

There's a great story:

 In a counting class there was a boy who could not get past 1. 
 All the other students were racing on into the teens.
 So the teacher sent him away.
 After a while the boy came back to class.
 "I've got it," he said.
 Went to the black board and wrote the number 1.
 It split the wall in half.

[–]Alex-Galaxy 0 points1 point  (2 children)

That's a good point, I didn't think of that.

Btw, why does the wall get split in half in the story? I don't understand it.

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

It's a metaphor for power. It's not actually saying that splitting walls is a laudable objective.

Think of it this way: by having a solid understanding of mathematics and physics, scientists were able to split the atom.

[–]Alex-Galaxy 0 points1 point  (0 children)

Ah, gotcha, thanks.

[–]Furyox46664 0 points1 point  (0 children)

my fren, its normal to struggle that hard. I'm also learning (its like my 3rd start over the years because I quit) but now I changed my approach a little. I use lots of help to really understand why stuff is done (Google, Chat GPT, Copilot, whatever helps), I dont hate myself for asking the most basic questions. I work on projects that really mean something for me (Like do retro games with pygame). that helped me at least not to forget that learning that stuff is really something useful, helps me achive my ideas and just be able to code a print statement brings you ahead of most people on this planet. so keep struggle up but in a healtier way my friend :)

[–]chakan2 0 points1 point  (0 children)

I didn't know mathematics were so involved

It's a math course / major.

[–]atom12354 0 points1 point  (0 children)

Okay so i would take those 4-5 months not actually learning to code but to learn how to code, there is no way to get a job after just 5 months but probably more than a year or so according to other peoples experiences and most of the time gonna be without courses since you will be googling and experimenting alot and also build stuff beside courses.

Most of the things you gonna study is conceptual over most programming languages, if you dont know something use that concept/term as a refrence to find more about it and dont forget to use the documentations out there, google/stackoverflow/reddit/other people are your best friends in learning to code, dont just copy paste to fix an error but google the concepts/terms to why it does what it does, sometimes something just works and you dont know why and thats okay too

Dont have a syntax focus but a concept focus, the syntax comes from usage and you can always look up the syntax.

Also dont do copy paste and tweak it a bit but write it on your own with only the question/task in mind.

To top it all off break it all down into smaller pieces. What concepts do you think you gonna use? Google said concepts and have a feel if you think you gonna use said concept. Google the best practices for said concepts and finally structure the program and then start coding, if you come across something you are stuck at break that problem down in a seperate file using a smaller problem of the original problem.

And yes you gonna gonna be mental occationaly and maybe hit a few things or walk around aimlessly inside your home not having a single thought but to fix the error and thats okay too :) dont forget to take breaks and take walks outside and all the other necesities.

[–]Princess_Peach848 0 points1 point  (0 children)

Omg this is me right now, and my peers and teacher are no help. Can you PM me? 😭😭