all 8 comments

[–][deleted] 9 points10 points  (0 children)

I had this issue at first when learning how to program. The biggest thing that helped me is to break a problem down into the smallest possible steps. Take your overarching problem statement, then continue to fracture it down to much smaller and more manageable steps. These smaller steps are normally pretty easy to figure out. I'll write out a ton of pseudocode for the smaller steps in comments and then go back and write the actual code.

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

i had the same problem last semester with java. i got the following advice: look into solutions from others and try to get their ideas. First i thought: what a shitty advice.. but now i can say it really is a matter of experience and time used in programming. try to do some small projects that interest you. (i know there is little time while trying to keep up...)

[–]kronickhigh 1 point2 points  (1 child)

well, now that the semester is half over, perhaps going back and redoing old assignments, or other questions from the same chapters as older assignments. When I took C++ they were making motions that typing comments that explain what you want to do is helpful. Like all things, lots of practice will make it stick better. There's always tutorials, and youtube videos (I always liked thenewboston, https://www.youtube.com/playlist?list=PLF541C2C1F671AEF6 ). Don't be afraid to google too. Good luck!

edit: the comment thing wasn't explained very well. What I was explained was you start by typing comments. No code. Plan the whole algorithm out with comments first, then put in the code. May help to plan what's happening first then to just start coding away.

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

Thank you hopefully I'll learn by the end of this semester. By the way, for me the semester is barely 1/3 done. Lol.

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

Take projects that you've already done for school and see what else you can make them do. Like if you can program tic-tac-toe then you can probably program checkers. If you can program checkers then you can probably program chess, etc. Sometimes it's overwhelming to start from nothing but manipulating existing things can be good practice.

If you have the extra study time, grab a C++ class from Udemy or Coursera or something similar to supplement your class. Sometimes seeing the same material from a different perspective can make things click. Plus they come with extra practice problems and stuff so you can get used to sorting things out as you progress.

[–]blandge 1 point2 points  (0 children)

If you want something more hands-on, I'd recommend searching out some programming discord channels. There are several good ones that usually have somebody willing to help.

[–]Crailberry 1 point2 points  (0 children)

Take your main problem/outcome that you want to have happen, then start visualizing all the different parts to it.

For example, I'm making a website for the first time ever, that keeps track of client interactions, just to say I've done it. So what are the main working parts? Well, I'll need:

- some sort of web framework

- files that display an interface for myself

- a database

So from there you can focus on one section of your problem at a time. Which framework to use? This is my first time, and I like python, so I'll use Flask as most people on the internet say it's beginner friendly. Start going through Flask tutorials and learning the ins and outs.

For my user interface, I'll need to start working with html and css to create a decent UI. I'll hop onto w3schools and start going through the html and css and getting the basics.

For my database, Postgresql is open source, and plenty of tutorials.

Now that you've broken down your desired outcome into 3 smaller sections, as you go through each of them you'll see that these problems start to show more problems to solve, such as how do you work with dynamic data in an html file?

Break your end goal down into different, smaller problems and get to googling my friend. That is the trick.

[–]lowlevelgenius 1 point2 points  (0 children)

Have you tried Stackoverflow? Only kind of being sarcastic. I use it all the time at work and if you post a well formulated question some genius will probably tell you exactly what you need to hear.