Wednesday, January 29, 2014

                                                                                Week 4

YOOOOO so yeah it's me again. How's everyone doing in this week? To be honest to you guys, I skipped today's CSC148 class because I just had a midterm tonight and I spent my whole day studying in the library. I did ask my friends for the notes though so that I won't be falling too behind. So this week basically we just dived deeper into recursion. The professor showed us a few examples to help us understand what recursion is and how does it work.

Recursion to me is a SUPER hard concept!!!!! I don't know if it's just me or not but my mind still sticks to the high school programming where I just use a while loop or for loop to do everything. Although recursion works just like loops but I found it quite hard to understand. The hardest part is to find out where should I call the program again so that I can get the outcome that I want. I know that recursion will be very important for future programming so I better work harder to understand that.

I found that the turtle example that was shown in class very interesting. When the professor showed us how the program works, I was just so fascinated by it. Although I still can't understand all the of the codes in that program, I did realize the strength of recursion and how much it can do for us. The prof also talked a little bit about inheritance, which is a property in Python that allows us to make a sub-class under a class. The sub-class "inherit" all the functions in the main class, meaning that all functions in the main class can also be called in a sub-class. This is a great news for lazy people like me because when I'm writing a new class that is very similar of another class, I don't have to write the functions all over agian.

That's it for now. Come back next week for more updates on how I'm doing in CSC148


Wednesday, January 22, 2014

         It is already the third week of school and I am still trying to adapt to the level of difficulty of CSC148. As a student of CSC108 last semester and current student of CSC148,  I will say that there is an extremely huge difference between these two courses. If CSC108 is like teaching a baby how to walk, then CSC148 is like teaching a group of university students the physics behind walking. However, every time when I review the lecture material after class, I do find myself have learned something new and helpful.

In the past few lectures we covered a topic called Object-Oriented Programming. This concept is quite new to me since it was not covered in the previous programming courses I have taken in my life. Back in high school, all of my methods were long and I didn’t know how to break them up into smaller methods. Now, I am taught to create my own type (class), which allows me to break everything into different objects. It sounded like an easy concept to me at first, then it became really hard when it came practical situations. First of all it is hard for me to get the code right because I always get messed up by the “self” thing. I always forget how and when should I add “self” to the code and when shouldn’t I. Secondly, I found it quite hard for me to think of what methods should I be creating. These two are the main problems that come up when I am dealing with Object-Oriented Programming.

I really hope that I can feel more comfortable with Object-Oriented Programming because I believe this will be one of the most important things in my future programming life. I’ll get myself more practices and learn from some other great examples. Hopefully I will overcome my problems in OOP soon.