Hey, guys. I really need some advice. I apologize in advance for the length, you can probably just skip to the near bottom of this post.
I am a junior in college, my major is computer science. My problem is that I don't consider myself very good at programming (with Java). I’m trying to figure out why I’m not good at it and how to become better.
Last semester, I took Software Design 3 – Algorithms in Java. I did pretty poorly, just barely managed to get a ‘D’ in the class. I thought for sure I would get an ‘F,’ but I think my professor helped me out since he knew that I put a lot of effort into the class, I had an extremely difficult time with the programming assignments.
I feel like I know absolutely nothing about programming, is this a red-flag? How could I be in Design 3 and still not really know a whole lot? There are a few factors that come to mind for my difficulties in the class, let me know if you think these are reasonable.
I find algorithms and math-related stuff to be pretty boring which was not good since that is pretty much all we did all semester. I also wasn’t a huge fan of the professor, he gave just a few small code examples and posted very few lecture presentations; the majority of learning in the class was just listening to him talk at us. Also I was taking Calculus 2, which was a very difficult class for me, math has never come easy to me. Needless to say, Calc 2 consumed a lot of my time.
I wonder if maybe the biggest factor of my programming difficulties was my approach? From talking to the professor and some of my peers who helped me out along the way, they seemed to indicate (I felt like this too) that I just jumped into programming without really thinking it through (by writing pseudo-code/steps for instructions out on a piece of paper). I would tend to get “done” with a program, and then get really stuck trying to debug and figure out what was wrong with my program.
Is it really as simple as just making sure to think through the programming steps more thoroughly/slowly and test it out along the way? This was also something that I found difficult; testing my program along the way.
Sorry for the novel! Any advice, suggestions, comments, referrals to other threads/resources whatsoever will be extremely appreciated!
Thanks a lot!!