5/24/2009

Technical Writing 05 - Body

這星期進到內容的部份啦(原來剩下三週課程就結束了!!!)

Body雖然會因為內容而異,但是還是有一些基本的準則可以參考的。
首先,一段應該只有 one idea!!!

它的結構跟一篇文章的結構很像,大致可以分成:
  1. Beginning (Topic Setence) : 這段的idea,大概用1~2句話描述
  2. Middle (Supporting Idea): 證明topic sentence的evidence.
    Again, 3 is the magic number!!! 通常外國人習慣接受是三個理由,或是三個例子(這是最剛好的數量)
  3. End (Concluding Sentence): 用一句話總結整個句子,簡單的summary,可以用第一個句子換句話說XD
  4. Transitional Sentence: 這是optional的,一般作文有的話可以讓段落間的flow很流暢,但是在paper中,因為段落之間差異太大,通常不會加!

另外,在段落或Supporting Idea的發展時,常用的有
  1. 從大題目到specific的小題目(寫introduction時也常用這方式)
  2. 空間順序(由遠而近或由近而遠)
  3. 時間順序(順敘法或倒敘法)
  4. 流程:這是paper裡面最常用到的作法。

另外因為我上星期詢問是否可以找一篇外國人寫的Introduction,讓我們看看什麼才是好的introduction,所以David找了一篇外國學生寫的文章讓大家參考,雖然不是conference paper
看起來只是一篇學生的作業,不過David說這篇寫的非常的簡潔易懂,是個很好的sample!

還有,David另外還給了一份reference檔,分別講寫各個不同的部份時可以用的句子,句型。

這星期紙本資料很多,所以投影片看起來少少的:p



Technical Writing 04 - Introduction

所謂萬事起頭難,Intorduction真的是每次都讓我最頭大的一部份!

一開始,David便回應第一堂課我的問題:Abstract跟Introduction的差異
(奇怪,怎麼又是我的問題,我果然是問題寶寶~~哈哈)

先講相同點:
  1. 兩個都要把目的、動機寫出來
  2. 兩個都要提到概略方法、主要結果還有結論
那不同在哪呢?
  1. Intorduction雖然最好不要太長,不過通常我們不會有字數限制(Review: Abstract建議字數大約是200字左右)
  2. Introduction的主要目的是提起動機和背景,因此通常都會從比較general的地方開始,再慢慢導入到specific的問題,也就是這篇paper想解決的問題,提方法跟結果的目的只是讓讀者知道要怎麼繼續讀下去。
    Abstract則是對整篇paper做一個簡短的summary,所以paper的結論相對而言比introduction還要重要,而且abstract也不需要(也沒有空間)做像introduction的導讀。
David先提了一般在寫Introduction常見的開頭法,不過他最推荐的還是top-down approach(General topic->Specific topic):
  1. Quotation : 一般作文常見,不過不要拿來用在寫research paper上
  2. Question: 類似中文作文的疑問句法囉(不會的去問國小作文老師= =)
  3. Opposite Opinion: 
  4. interesting fact: 
  5. paradox: mystery推理小說似的寫法
  6. Analogy: 跟現有東西的比較
不管用哪一種開頭,一定要銘記在心的是寫Introduction的兩個功用:
  1. Define: 定義要解決問題
  2. Divide: 把問題分成小部份,讓之後的段落可以各個擊破!
一個好的introduction可以讓你上天堂,也可以讓你住套房(我在講什麼啊XD)
因為introduction才是讀者看到的第一段話(並不是Abstract),所以在Introduction要做到的事情有: 先吸引讀者的注意力,告訴他們這篇paper的背景知識,讓他們對你提出的問題產生興趣,最後再引導他們到你的thesis statement!

接下來提到我們常常會犯,而且會搞砸一篇paper的錯誤:
  1. 時態:可能是我們的語言沒有時態,所以這是超容易犯的錯誤。不過之前我以為這個錯誤還好,反正外國人也知道我在講什麼嘛~~沒想到David說這會是他最頭大的地方,因為他念到不同的時態,會自己感覺到時間,但是當描述的時間跟動詞的時間不一致時,就會讓他覺得整篇文章念起來很不通順!!! 我沒想過文化不同
    簡單的說,除非是well-known fact,不然只要是我們自己paper的result,一定要用過去式,因為你一定要做完了才能submit你的結果啊,所以只能用過去式!!
  2. 不要在paper裡面提到你們的author裡面誰做了什麼事,這一點也不重要。
  3. 不要用主觀的語氣描述事情(ex. I feel, I think, I believe...)
  4. 不要用太情緒化或誇張的字眼(ex. huge, wonderful, etc.),這類詞語很不精確,用在paper上或弱化paper的力量。
  5. 為每一個重點寫下你的解釋或證據證明這一點是對的。不要只是一直換句話說。
這次的sample 是交大的paper(link)
"Because tremendous commerical potential"一開始就很明確的告訴人家牛肉:money!!!!
然後給了一個這個領域的overview。在第二段接著講可以用的scenario帶出問題,還有他們打算怎麼解決。

David非常讚賞這篇,因為他說連他這個不是cs領域的人看了introduction都能知道他們想做的是什麼。



5/12/2009

flex DragManager

在flex 裡面要做drag,除了幾個原來就有implement drag的controller以外,
還可以利用DragManager來處理

假設物件A要拖到容器B裡面,用Drag Manager的話,最基本的用法就是:

  1. B listen DRAG_ENTER 事件
  2. B listen DRAG_DROP 事件
  3. A listen MOUSE_MOVE 事件
我在網路上找到了一個很好sample code: flex 2 Drag and Drop 練習

然而實作的時候卻發現一個大問題
假設我的容器B長這樣:
<mx:Canvas id="playground" width="300" height="300"></mx:Canva>
測試時發現, DRAG_ENTER完全沒有被觸發!!!不死心繼續找,終於在某次發現是background,是background啊!!

只要在attribute裡面設定了backgroundColor或backgroundImage,就可以讀得到了!!!
如果不設background只設border,那只有在經過border(有畫出來的時候)才會觸發DRAG_ENTER event!!!!


所以這時候就出現一個問題了,如果我就是不要background怎麼辦,
目前我只能用繞道的方式解決,也就是除了設定background以外,另外再加上:
backgroundAlpha="0"

呼!!

5/05/2009

Technical Writing 03 - Active Voice

這星期一開始先複習了上次abstract的重點,
這次拿了另一篇paper來講(怎麼都挑CYY的啊XD)

David說這一篇的abstract就寫得不錯,不過我們在討論這篇abstract的時候
對於哪部份是purpose有小小的爭論了一下!
我覺得後面的furthermore那句應該也要算,David則覺得它的寫法不能算,
因為purpose還有一點motivation 的意思,它的寫法只算大略提到future work。

討論完abstract之後就進入上一次上課最後提到的問題:Active Voice!!!

一般句子大約分成三種型式:主動、被動、以上皆非(Linking Verb):
  1. 主動式指的是句子的主詞是執行動作者,這類句子給人的感覺比較積極,寫自己的work時最好要用這種方式來寫。
  2. 被動式指的是句子的主詞是接受動作者,通常語氣比較委婉,適合用來描述別人的work使用
  3. 以上皆非指的是非主動也非被動,也就是單純描述一個狀態,例如:The weather is awful.通常句子裡面用be動詞的就是這種類型的句子。
然後就是一些練習啦,其實主被動在國中(或國小)早就是考到快爛掉的東西了,不過對於語氣給人的感覺沒有David提,我還真的沒注意到這種差異呢!!!

下星期就要進入Introduction了!!