How to make progress in programming classes?

In summary, the student failed the class because he lost focus in the classroom and could not focus on the programming assignments.
  • #1
bolzano95
89
7
Hi everyone,
Hopefully I'm writing this in the correct part of PhysicsForum.

Here is my problem:

I'm really struggling with my programming class (basics of python3 - loops, dictionaries, numpy).

What I did this semester:
1. Participated in every class
2. Solved everything our course offered
3. On every opportunity asked for tips from older/fellow students
4. Googled every dilemma I had
5. What I could not solved on my own I posted on StackOverflow - sometimes got full answer, the other times just a general idea.

I failed my class. I don't know why.

What else can I do?

Currently I'm asking myself If I'm intelligent enough for this class to pass? Is that it? Am I just not intelligent enough?

I have no plan B how to learn for this class when I retake it in the second semester. Have to pass it, because it is a condition for the second year of my major.

Thanks for your help, Bolzano
 
Physics news on Phys.org
  • #2
Very short answer: Don't ask us, ask the teacher. Ask him if you can talk to him and then discuss your learning strategy and ask him for his feedback on your performance. Maybe you have to approach this course differently.
 
  • Like
Likes member 428835, anorlunda and phinds
  • #3
bolzano95 said:
I have no plan B how to learn for this class when I retake it in the second semester. Have to pass it, because it is a condition for the second year of my major.

Thanks for your help, Bolzano
I noticed that you've been posting here for four years. Have you been an undergraduate for four years? What's your major? I guess it's physics from the homework threads. And, yet, you're new to programming?

Just curious.
 
  • #4
bolzano95 said:
I failed my class. I don't know why.

What else can I do?
Aside from the advice to ask your instructor, on what basis did you fail the course? Exam scores, Final exam score, scores on programming assignments? All of the above?
 
  • Like
Likes PeterDonis
  • #5
@bolzano95, you posted this back in September, about the physics class you were taking:
bolzano95 said:
I come to the physics lecture and I'm totally engaged in the lecture material. But after 20min I start to lose interest and I have to physically force myself to stay in the class until the end. In the meantime I'm thinking about everything BUT physics.
In the long term this leads to nowhere and already I'm asking myself why go to the lectures at all.
It really doesn't make any sense to me, because the lectures are really interesting and the professor really lectures (not just reading the powerpoint presentation).
Also, when I start doing physics problem, I do them for an about hour, do a break, then another hour, and then simply say: That's it, enough for today.
But I should also practice my math and programming.

I really don't want to leave everything for the last weeks of the semester.
Do the same conditions apply to your programming course? If so, not being able to focus on the classroom presentation during lecture is a problem, as well as spending only an hour or two on a class.
 
  • #6
I come to the physics lecture and I'm totally engaged in the lecture material. But after 20min I start to lose interest and I have to physically force myself to stay in the class until the end. In the meantime I'm thinking about everything BUT physics.

when I start doing physics problem, I do them for an about hour, do a break, then another hour, and then simply say: That's it, enough for today.
@bolzano95 sounds like someone who has a primary learning mode that is not auditory.

(I am very visually-oriented, and find it literally impossible to listen to someone lecture or listen to someone read a book for longer than thirty seconds before my mind wanders (or I literally fall asleep.)

This mismatch has been very common in the education and, for the longest time it was considered a "learning disability" and put the blame on the student rather than on the inflexibility of the education system.

Nowadays, there are options that might open up other learning modalities for you to learn in a way that your brain works. I would suggest you approach your program coordinator, teaching assistant or registrar and express your difficulty with the learning techniques that are over and above poor performance.
 
  • #7
Mark44 said:
Aside from the advice to ask your instructor, on what basis did you fail the course? Exam scores, Final exam score, scores on programming assignments? All of the above?
We got only 1 exam = Final exam. Failed this one.

I went to the professor and explained my problem. He just looked at me and said nicely " You have to solve this on your own."
 
  • Haha
Likes PeroK
  • #8
PeroK said:
I noticed that you've been posting here for four years. Have you been an undergraduate for four years? What's your major? I guess it's physics from the homework threads. And, yet, you're new to programming?

Just curious.

Hi PeroK,

I took a break for 1year from uni and changed my degree to management. Finished bachelors degree and currently doing masters in Business Informatics. If you need more info, please send me a pm :)
 
  • Like
Likes PeroK
  • #9
bolzano95 said:
We got only 1 exam = Final exam. Failed this one.
Was that really the only thing that determined your grade?

If the answer is "yes", then I would say this class was very badly designed.

bolzano95 said:
I went to the professor and explained my problem. He just looked at me and said nicely " You have to solve this on your own."
Were you given any feedback during the class? For example, you say you "solved everything the course offered". Were you able to check whether your solutions were correct? Were you able to get feedback when your solutions were not correct?

If the answers to these questions are "no", then I would say this class was very badly taught.
 
  • #10
If ever a subject ought to be judged by assigments it's programming!
 
  • Like
Likes member 428835
  • #11
bolzano95 said:
We got only 1 exam = Final exam. Failed this one.

PeterDonis said:
Was that really the only thing that determined your grade?

If the answer is "yes", then I would say this class was very badly designed.
I suspect this system is common outside the US. My wife experienced it while in a study-abroad program in Germany, as part of her degree in German language and literature, about 1970.
 
  • #12
PeterDonis said:
Was that really the only thing that determined your grade?

If the answer is "yes", then I would say this class was very badly designed.Were you given any feedback during the class? For example, you say you "solved everything the course offered". Were you able to check whether your solutions were correct? Were you able to get feedback when your solutions were not correct?

If the answers to these questions are "no", then I would say this class was very badly taught.
Yes, checked every solution. If I couldn't solve the problem on my own, I tried to learn from the solution code and if I had additional questions - wrote my problem on stack exchange.

That's why I'm so flabbergasted why I failed.
 
  • #13
bolzano95 said:
Yes, checked every solution. If I couldn't solve the problem on my own, I tried to learn from the solution code and if I had additional questions - wrote my problem on stack exchange.

That's why I'm so flabbergasted why I failed.
OK, but presumably you get marked more on results than on effort.

Ultimately did your code work?
 
  • Like
Likes PeterDonis
  • #14
PeroK said:
If ever a subject ought to be judged by assigments it's programming!
Amen to that!
jtbell said:
I suspect this system is common outside the US.
That's my understanding as well (that course grades are based on a single final exam).
 
  • #15
DaveC426913 said:
OK, but presumably you get marked more on results than on effort.

Ultimately did your code work?
On the exam - ultimately no.
 
  • #16
PeroK said:
If ever a subject ought to be judged by assigments it's programming!
Yeah, I see the wisdom of that.

Basing a final mark on a single works/doesn't work exam is antithetical to the nature of programming.

If it is as the OP describes, then this is a terrible class.
 
  • #17
bolzano95 said:
On the exam - ultimately no.
Do you understand why the code you wrote on the exam didn't work?
 
  • #18
bolzano95 said:
On the exam - ultimately no.
Perhaps your method to check your code is inadequate. The code that I write is sometimes not correct when I first put it down, but it tends to get corrected once I analyze it. Software engineering and Algorithms classes are often helpful for understanding how to analyze a segment of code for correctness. Introductory programming classes tend not to cover the analysis techniques.

See if you can find a student who's willing to tutor you on checking your code.
 
Last edited:
  • #19
austinuni said:
Perhaps your method to check your code is inadequate. The code that I write is sometimes not correct when I first put it down, but it tends to get corrected once I analyze it. Software engineering and Algorithms classes are often helpful for understanding how to analyze a segment of code for correctness. Introductory programming classes tend not to cover the analysis techniques.

See if you can find a student who's willing to tutor you on checking your code.
If there are standard techniques for checking your code before trying to compile or run it, I'd be interested in learning them. For me, my errors are usually pretty subtle. Well, except for the syntax errors when switching between similar languages for different pieces of code (like Python and Tcl)...
 
  • #20
berkeman said:
If there are standard techniques for checking your code before trying to compile or run it, I'd be interested in learning them. For me, my errors are usually pretty subtle. Well, except for the syntax errors when switching between similar languages for different pieces of code (like Python and Tcl)...
I am not aware of any standard techniques for checking code, it's more informal methods I picked up after taking SW Engineering and Algorithm classes.
Like for example, inside a function, I will look at every place where a variable is referenced. Does the variable change value like I expect (increment/decrement, etc.)? Is it set and not read (usually a bug lurking underneath, C compilers will often catch that). Are the corner cases for this variable handled correctly (first value, last value)? Is the variable declared/initialized correctly? These are easy to check if you step through and search for the variable in the editor.
If I am getting subtle errors, it usually means I am trying to do too much inside a chunk of code. So I will try to split the code into a larger number of functions that each do simpler things.
 

1. What are some effective study strategies for programming classes?

Some effective study strategies for programming classes include practicing regularly, breaking down complex concepts into smaller parts, seeking help from classmates or instructors, and using online resources or tutorials.

2. How can I stay motivated and focused while learning programming?

To stay motivated and focused while learning programming, it can be helpful to set specific goals, take breaks when needed, and remind yourself of the reasons why you are learning programming. It can also be beneficial to find a study group or a mentor for support.

3. What are some common challenges in programming classes and how can I overcome them?

Common challenges in programming classes include understanding complex concepts, debugging errors, and managing time effectively. To overcome these challenges, it can be helpful to seek help from instructors or classmates, practice regularly, and break down tasks into smaller, manageable chunks.

4. How can I improve my problem-solving skills in programming?

To improve problem-solving skills in programming, it can be beneficial to practice solving different types of problems, familiarize yourself with common algorithms and data structures, and analyze and learn from your mistakes. It can also be helpful to work on projects or challenges that require critical thinking and problem-solving.

5. How can I prepare for exams in programming classes?

To prepare for exams in programming classes, it can be helpful to review class notes and materials regularly, practice solving different types of problems, and seek help from instructors or classmates if needed. It can also be beneficial to take breaks and get enough rest to avoid burnout and maintain focus during the exam.

Similar threads

  • STEM Academic Advising
Replies
4
Views
975
  • STEM Academic Advising
Replies
11
Views
431
  • STEM Academic Advising
Replies
22
Views
5K
  • STEM Academic Advising
Replies
7
Views
2K
  • STEM Academic Advising
Replies
12
Views
1K
Replies
6
Views
933
  • STEM Academic Advising
Replies
1
Views
681
  • STEM Academic Advising
Replies
4
Views
2K
  • STEM Academic Advising
Replies
21
Views
2K
  • Programming and Computer Science
Replies
8
Views
878
Back
Top