Friday, February 14, 2014

Weeks 5-6: [Programming Intensifies]

This is where the course material really ramps up in difficulty. While the first few weeks were pretty straightforward, weeks 5 and 6 introduced us to the subject of recursion, which requires quite a bit of thinking to implement correctly.

These were also the weeks where we had to complete our first assignment of the course, a project based on the "Towers of Hanoi" game: Finding out the least number of moves you could move one set of discs from one peg to another.

However, we also had to implement the 4-peg solution, also known as "The Reve's Problem." This was very challenging for me. So challenging, in fact, that I wasn't really able to complete it. Something about the outline was making me draw complete blanks that I ended up staring at my screen for hours on end. Fortunately, I did complete enough of the material to earn around a 70% on the assignment.

In hindsight, I really should have partnered up with someone or not started so late, or gone to the one office our I was able to go (work cuts into my schedule a lot).

Since assignment two has now been posted, you can bet that I'll be doing everything I possibly can to get it as finished as possible.

Sunday, February 9, 2014

Weeks 1-4 Catchup

I figured I might start on this now.

To all of you students and TA's alike who have been absolutely dying since they haven't been able to see the wonderful content I haven't posted yet, here's a huge chunk of info to make up for the posts I haven't been able to do. I, personally, am in quite an interesting position to be taking computer science. I'm actually a second-year student at UofT. However, after trying (and failing) to get into Rotman Commerce last year, I decided to attempt switching to Computer Science as it's something I've always wanted to explore, but never had the chance to get into.

I've always been into computers and various electronics, even designing a few custom builds (one of which has sat back in Ottawa for the past few years). However, I never took programming in High School, so I thought I might start. Surprisingly, CSC108 last semester was not too difficult, and I found the concepts easy to grasp and the teaching style very effective. I wish I could say the same about CSC148/165, but maybe I just haven't been studying as much as I should.

From what I've done in the courses so far, I quite enjoy it. All the technical aspects of programming and testing whether your code is right fall right into how I like to do work. It's almost like learning another language, too. You have to learn all the terms and syntax for all the pieces to fit together perfectly.

Object-oriented programming is a bit different from the style we used in 108, but it is a welcome change. It allows me to delve deeper into problems and focus on them on a bigger scale - I feel like I understand what I'm trying to code more. The style guidelines also took some time to get used to, but I feel like they clean up the code considerably.