Wednesday, March 25, 2015

WEEK 11 - Week 3 Revisited

In our third week of the term, we were asked to write about why we think that "geeks" should write. I have always been a solid believer in writing things down, so I remember that when I first began writing the W3 blog post, I had some very strong opinions on the topic.

Having gone through the term, I believe that my belief that "geeks" should write, because: it is helpful in reflection, to learn from past errors and as a reference for mistakes and past projects stands more than ever. Having worked through more challenging assignments than previously, I can wholeheartedly say that writing down my ideas and my plan of attack has proven to be ever so important in a successful assignment. The frequency of my writing has also proven useful when commenting on assignments. Commenting was brought up in 108 and at the time I could see how maybe it could be important, but when the scale of our assignments grew in 148, I really realized, and was thankful that I took the time to comment properly, because things can get confusing, very quickly, without proper commenting.

Even having the opportunity to look back on some of my SLOG posts for this class has proven to be a source of motivation, to keep going when I'm feeling less than great. I look back and see how far I've come and it gives me a sense of relief knowing that I've made such huge strides.

Looking through SLOG's of my peers, I can see that there are mixed reviews on the importance of writing. Some agree, others don't. For those who agree, they all seem to follow a similar pattern in their reasoning. That writing is important because communication with others, and communicating your motives with your code is important and through proper communication you can achieve wondrous things. It's nice to see that others have a similar mentality in their opinions on writing, and I hope that through writing the SLOG's others will keep with the habit of jotting down their thoughts because they will find it ever-so-rewarding later on in their life.


Wednesday, March 18, 2015

WEEK 10 - Defeated.

A relatively quiet week, the second term test occurred on Wednesday, and it did not go as well as I had hoped. I have yet to receive my marks yet but I am certain that It was bad. I'm feeling very frustrated with the course, as well as with the ongoing strike. I miss having a tutorial where I could ask the TA questions about the class material as well as an opportunity to work on labs, whereas I am finding myself skipping weekly labs because there is no incentive or actual tutorial time. I feel as though I'm not getting the results I want for the work I'm putting in and this is the most defeated feeling in the world.

I know that me working on the labs would have been good preparation for the term test, and I've been kicking myself in the butt for not doing so. I'm just having a hard time motivating myself as of late and disinterested in the course. I have decided that once the results are posted, I will go through the test again and work through the problems because I clearly don't have as good of an understanding as I thought I had. I also think it's important for myself to be more engaged during lecture, and to ask questions. I find myself being very passive in class and this isn't conducive to getting a good understanding of the material.

I'm going to try to do these two things and hopefully we will see some positive results when the final test rolls around.

Monday, March 9, 2015

WEEK 9 - Linked this, Linked That.

This week was all about linked lists. This ADT is all about nodes that have one single reference to an object behind them, and that object has one behind it, etc... This linear sequence was interesting to learn about because we also implemented a "wrapper" class to go with it. This class was used to represent the linked list as a whole and was super useful for references to the front and back of list, as well as the size of the list. It also provided some very helpful methods to: prepend, append, and delete from the front and back of the linked list, making it very functional.

I think that this week was a success for me because I feel like I caught on to understand how to work linked lists very quickly in comparison to BST's and Trees in general. It was very rewarding to be able to look at the classes and think to myself: "WOW I ACTUALLY UNDERSTAND THIS." It's a pretty straightforward concept, but I can see where confusion may occur when re-distributing references to the front and back of the Llist when mutating it. Diane keeps mentioning the importance of drawing diagrams, and this is something I haven't been doing... But I think she's right and I'm going to put the effort into start drawing more diagrams.

I really need to work on my recursion and my trees though. I am feeling very uncomfortable with these two topics still and I have a feeling they will play a large part in the questions on the second term test that is happening this coming Wednesday.

Wednesday, March 4, 2015

WEEK 8 - George, George, George of the jungle, watch out for that TREEE!

This week we talked about binary trees and binary search trees, which are like a regular tree, except each node can only have max two children (a left and right child node).
For binary search trees though, the exception is that: for every node, it's value is greater than all values in it's left subtree and less than all values in it's right subtree.

This is very interesting and we talked about the reasoning behind why BST's exist. They exist so that if you needed to search for a specific item in a tree, the search would be almost lightening quick as you could cut off several paths just by looking at their children no matter what their length is. This could then be applied into searching for a specific node in a tree, following the same parameters. I really enjoyed talking about the different ways of going through a tree and writing the methods in class. Having had the opportunity to write code for methods together really gave the opportunity for students to ask questions about why we did it the way we did, and help solidify the concept of BST's and their methods in my mind.

I'd also like to add that I'm currently very frustrated with A2. The minimax strategy is much harder then anything we've done before and so I'm feeling very angry at myself for not being able to understand it properly. Our team is completed almost everything else except for this and none of us have been able to get minimax to work properly. I suggested that we go into office hours at some point before the assignment is due because I think a explanation and clarification could really be helpful in nailing down this strategy.

Hopefully we figure it out on time before the assignment is due and we can submit everything early so we no longer have to worry about it. I really hope the instructors will be easier on the marking as I'm really noticing the lack of support from having the TA's to ask questions to.