2012년 11월 23일 금요일

Term Test 2, Wikipedia, and Project 2

When professor Heap mentioned that he will return the marked term test 2. I was bit nervous because personally, I thought I did not do well. I have written answer to every short answer questions during the test but I was not sure if two of the four questions where correct as well as the last question regarding to explaining what was happening in the sample recursion formula. When I got my test back, I was relieved to see that I did well. I was glad when professor Heap mentioned that there is 4 point boost because I wanted a grade higher than 85%.

Wikipedia assignment wasn't extremely difficult to do. Because I did some previous research about the topic I want to fix and about the language used by the Wikipedians. I began by adding some missing information. During editing process, I have come across multiple problems even though I did some basic research. To resolve the issues, I read guides and looked at the language of the articles that already had features I wanted to include in the topic I was revising. It took some time, but in the end, I managed to repair all the problems. When enough information was added, I wrapped it up by polishing some grammatical issues.

Just after finishing project 1, project 2 was given. I looked into it and attempted to revise the definitions and add appropriate check-expect lines. I successfully wrote all the necessary codes except one definition. But I wasn't worried about it too much since it was due November 30th. What I am planning to do in order to make the definition to function properly is to ask my peers and ask professor Heap to obtain some hints.

Overall, although CSC104 course covers diverse topics, it is an interesting topic. However, I would not recommend to people who does not have any computer knowledge at all. This is because I know that my brother who is taking course with me is very strong in Life Science courses. In CSC104, most of the times, he has no clue what are the main concepts to take away from the lecture slides nor what professor Heap is trying to explain. I sometimes have this problem because lecture slides contain too little information to fully comprehend the necessary concepts. The lengthy online lecture notes are great, but again, to computer dummies, I don't think it is a safe alternative for understanding concepts and for performing superbly. I would recommend this course to people who have some basic knowledge.

2012년 11월 9일 금요일

Finishing up the Project

After going through so much midterms, I started working on Project 1. In the beginning, it seemed so confusing because there were so much codes jumbled and mixed together. However, after reading the assignment handout and the instructions written after semi-colons, I slowly began to figure out what I must do. The check-expects I had to add were easy. I breezed through them all. The difficult part was fixing the definitions so that it matches with the previously written check-expects. Fixing "clarify-color" was easy. But, "check-key" function took some thinking to figure out the definition's code. Personally, the hardest one was "clarify-image" command. I tried various things to make it suit not only for the check-expects, but also for the clock hand images. At first I knew a condition code was need in the definition code. It took various attempts which all failed. This was because most of them gave an error of 'in a argument, a number was expected but an image was given.' I was getting really frustrated, but before giving up, I wrote one more code that actually worked for check-expects. Unfortunately, it did not work for the clock because it only showed white circles with alpha value of 0. As a result, after the lecture was over last Wednesday, I asked professor Heap for hints. He advised me to look through the map-image activity he went through. Unable to figure it out even after the professor gave me the hint, I called a friend who took CSC104 with me. He and I thought our brains out but couldn't resolve the issue. In the end, he decided to ask to his TA and left library.

Even after he left, I tried to think what map-image had to do with "clarify-image" definition code carefully. The exercise had "map-image" command and two arguments: another function and an image. I knew that "map-image" was just "map-image", and the image (2nd argument) was the variable c. Then, it hit me. I realized what I need for the 1st argument. Because the condition of r+g+c is greater than 650 was already included in "clarify-color" command, all I had to do was (define (clarify-image c) (map-image clarify-color c)). When it was ran, it worked perfectly. All the check-expects passed through and the clock was working properly with proper clock arm pictures.

Embracing the joy of success and the fact that I finally fixed the issue made my day. However, I soon realized that there was another project. Hopefully, the next project won't trouble me as project 1 did.