Tips for success in Introductory Programming
- Read (or at least skim) the text book sections and lecture notes
to be covered in lecture BEFORE it is covered. Make
additional notes on your copy of the lecture notes for items mentioned
in lecture that you feel may help in your understanding of the material.
- Concepts may seem familiar and you may understand them when they
are explained in lecture or in the text book, but that does not mean you
know that material. True knowledge (or possession of that knowledge)
means you can apply those concepts to create programs which use them.
- Start early on homework assignments - at least three days before the
due date. Better yet, start on Friday night or Saturday morning before
the week the homework is due. This allows plenty of time for unforseen
delays.
- Solve each homework problem completely - even if you must get help.
Remember homework is your opportunity to teach yourself the material
for that week. The quiz will test how well you have taught yourself through
the homework. Copying the homework solution from someone else really does harm
you because it means you are being robbed of the chance to learn that
material (plus it could lead to a failing grade for cheating).
- About one day before each quiz, do the following exercise:
- Re-solve the homework problems on paper without using a
computer and without looking at your correct solution. Writing
such a program on paper will be similar to what you will be
expected to do on the quiz, so this exercise should give you
an idea of how well you are prepared for this quiz. If you
can't do it, you aren't prepared. Do not rely on memorization of
the particular solution, but on re-deriving a correct solution
from the concepts and techniques you have learned.
- Check your on-paper solution against your correct solution.
Note each concept you missed and use this as a list
of topics to study.
- Some memorization is necessary, but memorization alone will
not get you a passing grade. You must understand the concepts
and the process of working out the combination of programming
language constructs to apply them to new - although only
slightly different - problems.
- Take the quiz and note anything you missed. Add these
items to your list of topics to study. The quizes will also help you
adjust to writing correct programs on paper in a limited amount of time
- just as you will be expected to do on the final exam.
- If you don't understand something:
- consult your text books
- consult your TA - in discussion/lab or via email
- email a specific question to your TA or instructor
- visit the course instructor during scheduled office hours
- you can ask your classmates, but they are often the most
unreliable source because they are just learning the material
too
- you may even want to hire a private tutor
- but don't just brush it aside. Learn each concept as it is
presented because the next week, you will be expected to learn
more concepts that build on those from the previous weeks.
- Don't feel ashamed if you don't pass a
course the first time you take it, but something must change in your
study habits to ensure you will pass on your re-take. Several students
have taken a class two or three times and have still not passed so
beware that simply repeating the class does not mean you are likely to
pass the next time - you really must make drastic changes to improve
your study habits. If you did not pass the course, please come see me in my
office hours and we will go over your final exam together and I will
explain what concepts you should focus your attention to for the
repeat. It is possible, this field just isn't for you, so you may want
to talk with one of the counselors for help in selecting a different
major (or even a different school) that is more suited to your aptitude and
interest.
- Remember you only get one shot at your transcript/GPA and it sticks
with you for life, so always try your best and shoot for the highest
grade in each class. If you earn a C- or lower in a class, you may
re-take that course to substitute the second (hopefully better) grade
in the computation of your GPA (for up to 12 units at UCI), but you
don't want to waste too much of your time. When you re-take a course,
the initial taking of the course (with grade) still appears on your
transcript, but only the grade for the re-take is counted in your GPA.
- One more thing. If you are new to the University, I suggest you
start with a very light load - at most three courses. If you must work
20 hours per week (or more) treat that as (at least) one course. You may
also want to limit your extra curricular activities while taking tough
courses.
- Make friends in your class to form a study group to help challenge
and encourage one another to excel in this course. Be careful not to
work too closely together on homework assignments which may be cross the
line to be considered cheating.