Tue, 22 Oct 2013, 18:20

My students,

I don't know whether my advice here is useful to you personally or not.
Since I know many of you are concerned that you did not prepare properly
for the first exam and are looking for ways to study *better* for the
next one, I am including my response to this student to you all.

I am mindful of the fact that it is not the case that one size fits all,
and part of the challenge for all of us is to find the method that works
best for us.

In any case, a student writes:

> Professor Patt,
> I did poorly on my first exam, and since the second exam is approaching, I
> was wondering if you could tell me how to study for your exams. I don't
> have many chances to try different ways of studying for the exams and
> figure out for myself which method works; so I thought I would just ask you
> directly. How to study for the exams?
> Secondly, I'm one of those people who spends countless hours working on the
> programming assignments. When I ask my friends if they are done with their
> program, they always say "yes". So, I was wondering if there was a specific
> template or procedure that I should follow so that programming would be a
> bit easier, or is it something that just comes with practice?
> Thank you,
> <<name withheld to protect the student wanting to know how to study>>

There is no silver bullet prescription that I can give you.  I can tell
you that memorization, that thing that got you accepted to UT and other top
schools in the first place, is not the answer.  My exams, and I hope everyone
else's exams in engineering school, are going to test whether you really
understand the material well enough to apply it to a problem you have not
seen before.  The question is: How do you get to that point?

First is to recognize what you understand and what you have memorized.  They
are different.

I recommend working the problems on old exams, working the problems at the
ends of the chapters, and not giving up too quickly if you can not do them.
If you make a serious effort to work a problem and still fail, then a TA or
a member of your study group explaining it to you will be far more beneficial
than if you did not make the effort and you are just following along. 

In your study group, try to come up with your own problems for your study
group members to solve.  Sharing that activity can lead to better understanding
for all in your study group.  Don't be afraid to discuss concepts with the
others in your study group.  What does such and such mean?  How does it work?
Why does it work that way?  Does it have to work that way?  

Is everything in my lecture clear?  After class, go over what I said in class
and be sure you understand the steps I went through.  Was something not clear?
Try to make it clear in your head.  If you can't, ask the others in your study
group if it was clear to them.  If not, see a TA.  If you still have trouble,
see me.  In fact, bring your whole study group with you since if any of them
got it, you would not have to see a TA or me!

As to programming, some students pick up programming much quicker than others.
I am not sure what the reason is.  But I have seen many, many examples of
students who could not program at all, kept trying, and then something clicked
and from then on, programming was very easy.  I do not have the explanation,
but I have seen the results.  So, I encourage you not to give up.

Re: programming, I have talked about the structured programming approach to
systematically breaking the requirements down step by step into smaller
blocks.  Most people can not simply draw the perfect flow chart the first 
time they look at it.  Most of us have to chew on what is being asked for
for awhile, think about it, think about it some more, make some false starts,
before things click and we see our way clear as to how to do it.  

By the way, systematically breaking down the flow chart into smaller and 
smaller pieces is the tough part, going from there to the actual instructions
is the easy part.  So, don't be upset with yourself if it takes you a lot of
time to get the flow chart right.

OK, I have rambled enough.  Hope this helps.  Feel free to ask the TAs for
how they do it.  Or those in the class who did particularly well on the 
midterm and first two programs.  None of us have a corner on the market 
for having the answer for everyone.

Good luck with the rest of the course. 

Yale Patt