Thinking
today about how CSC148 is coming to a close, I realized that the lab I was
about to do (the one I did this morning) was the second last lab of the entire
course. It made me a little sad because I enjoyed the labs and the course, but
I noticed a wise way in which the course and its grading system had been
structured.
I
recently met with my Linear Algebra course's coordinator to learn how to write
proofs better. He said it was a difficult technique for most people to master
and usually required a few months of exposure to them. For that purpose, in the
continuation (MAT224) of my current Linear Algebra course (MAT223), he said he
would give proof assignments that would be automatically graded as 100% upon
submission and then reviewed to give feedback. This way, students could develop
the skill of proving without the pressure of having to do well.
This
is exactly what has been done with our labs; we are simply given the mark based
on participation, not progress, so the stress of being graded is removed. In
such a way, the labs are instead focused on teamwork, understanding code and
concepts, discussions, and asking questions to gain clarification.
Having
the lab component of the course has really helped me nail down, solidify, and
practice some of the things taught in class. Although today's lab was not as
intense from a programming perspective, it really helped me understand
algorithm efficiency by tweaking, testing, and talking about various sorting
methods.
Perhaps
the best part about the ease of today's lab was my partner's suggestion to test
bogosort. This shuffles a list until it is in sorted order, and actually isn't
the worst sort out there (look up bogobogosort if you're interested). My
partner, our TA, and I all had a good laugh at the fact that, when bogosorting
10 elements, we were able to do some homework and check back to find no
progress had been made. It actually took 35 minutes to sort the 10-item list,
so I think Python should consider tossing Timsort and implementing bogosort as
its built-in function instead, in all seriousness. ;)

No comments:
Post a Comment