2015年1月31日星期六

Impression of first few weeks

  The first few weeks were really hard for me, because content of courses now is quite different from it was last year. It seems that we have to take several big steps to meet the requirement... Although it was not easy, I believe I did make progress. The following are main steps about how I made it.
  First, make sure you completely understand course material handed out by your professor. Redo the examples given during class. Remember never read or look at the answer before redoing it, or you could never find out your problems. Then check your answer and think about the reason why you did those questions incorrectly, and compare your thoughts with your professor's. Finally, sum them up.
  Second, apply the knowledge into practice. You can find some exercises on the Internet and some of them are pretty useful. In addition, in my opinion, one of most efficient way to learn to program is imitating. So you could read others' code, try to understand it, assimilate the merits and then write your own code.
   Third, read more materials. I think the materials we get in class is not enough(at least for me), in order to inspire myself, I read more materials related to what we've learnt. However I found it's kind of wasting time to find useful material via Internet...
   Fourth, practice, practice and practice.

  Hope everyone can do well in this course.

2015年1月20日星期二

Why geeks should write

  It seems that all the things that geeks are supposed to do is writing code all day and night with less communication. However, in my opinion, communication -- writing words or speaking words, does help a geek to improve his or her programming skills.
  As we know, one of the facts of judging a good program is readability. Writing help us organize our thoughts, correct mistakes in the choice of words and increase readability, which are vital for conveying our ideas to readers. So does writing codes. If someone cannot write articles logically, convincingly, precisely and clearly, how could we expect him/her writing elaborate and nicely codes? By writing logical, clear comments and specs in their code, which means 'efficient communication', other programmers could easily understand your code. In addition, based on understanding of your code, other programmers can raise better suggestions to improve your code and skills.