我買了一個queue

我買了一個queue,目的是要矯正自己心猿意馬的問題。總是收集太多論文,然後這篇看到可能一半,就看到另外一篇更吸引人的。跟上高速公路一樣,在你前面總是有車,你永遠有超車的標的物。

這樣下去只會有要報告的才會好好看完,所以我買了一個queue。強制FIFO,先放進去的要先看,看完之後才換下一篇。

不過總是會有插隊的,像是上次老師上課指定這篇 “Tangled Interaction: On the Expressiveness of Tangible User Interfaces" 。不過這篇中段也還蠻吸引人的,所以插隊進來是可以地~~~ 不過這篇一開始很嚇人,摘要的第一句話就是:

This is an analysis and exploration of a basic aesthetic issue in interaction design: how an ambition to design strong and persistent relations between appearance and functionality, evident in approaches such as tangible user interfaces, in crucial ways in which conflicts with the ways miniaturization of technology have changed the relation between the object’s surface and its internal complexity.

喂喂,有沒有這麼長,你長達十五頁的論文,為了降低讀者的抗拒感,第一句不是應該說聲hello 之類的嗎?

不過,好險,只有前面可怕而已。

最近又看了一本書,叫做如何閱讀一本書(我真愛這種拗口的語法),才發現之前細讀書跟論文的方式都不對,所以自己的理解力才會增加的這麼有限。簡單的說,就是摘要、摘要、用自己的話重說一次。

這是目前正在努力的目標~~~~

廣告

新的詐騙手法

前天女友在y拍上買了東西,昨天跟老師開完會,在回家的車上就接到了詐騙電話(+88662256036),沒有大陸口音喔。他先問我說還記得匯多少錢嗎? 我說不記得 他就口氣很壞的說

130  !!!!

我在想,明明就一千多…. 心裡覺得很奇怪,就跟她說,妳再寫信給我。

他就把電話掛斷了!!!!

回家之後網路上查了一下,似乎是新的手法,不過篇數很少,可能是這方法太爛,業績不好被下架了。

不過唉,你們這些人好手好腳的(好啦 其實我不知道),為什麼不好好地做事情呢?

大桌子

身為家族中唯一一位會修點電腦毛病的成員,下場就是這樣!!!

e5bdb1e5838f054

這次幫我姨丈/阿姨 重灌他們的eeePc 701 (7吋的,最右邊那台),實際使用後有幾個缺點:

  1. 鍵盤真的能打字嗎……(不過我看今天學弟用我的U100 可以正確地按到三小鍵,我在想也可能是我的手指圍太粗)
  2. 4G SSD 空間真的太小,windows xp +sp3  +office 2003 + 防毒軟體 + 一些雜七雜八的。就只剩512MB左右(我也把下載的更新檔給宰了,但是hf_mig 不敢動,不然就又可以弄出100MB)。又不能用光,我姨丈還要用outlook express 收下他們所有的信來讀, 所以 勢必得裝張SD卡,好險很便宜…,不過真的不知道他們之前怎麼用的….   不過之前連防毒軟體都沒裝(也沒更新),在大陸這個毒窟……  這樣真的是膽大包天了

此外 還買了捷元 的idata(WD 500G  5400轉)行動硬碟組(2.5吋硬碟+外接盒,大概長這樣)-3600元還蠻便宜的。小白終於不會老是空間不夠了(其實如果沒有wmware 是不用買的…)。於是就多了80G的隨身硬碟,不過我要那麼大幹啥 …….

rake db:migrate RAILS_ENV=production

通常在rails我們要建立資料庫的話  可以這樣

rake db:create:all

不過某台主機上不知道為什麼不行 ,只好自己手動開一個資料庫。就算開好了,當我鍵入

rake db:migrate RAILS_ENV=production

的時候會出現:

rake aborted!
Mysql::Error: Table 'xxxxx_production.ooooo' doesn't exist: SHOW FIELDS FROM `ooooo`

實在是太詭異了,不過我實在沒空跟它搞,希望之後有時間把問題抓出來,這個問題的奇怪解法就是把  config/environments/production.rb 裡面的

config.cache_classes = true  => config.cache_classes = false

就可以了….

程式的一致性

這一陣子斷斷續續都在幫系上的學長修改系上的期刊系統。 我們是使用ojs 這套開放原始碼的系統,我看學長用起來功能還頗為完善,不過中文語系尚未完全翻譯完畢,算是較為可惜的地方。

不過外國人所寫的系統有個問題就是他們的全名排列方式跟我們的不一樣,學長希望我改一下這個問題。我跟學長討論了一下之後,決定採用判斷姓名的utf8編碼是否落於中文的範圍,如果是就把排列順序倒過來這種方式來做。

不過後來真的改到吐血,經常一找就是一個晚上。為什麼呢? 因為ojs程式碼的一致性不太好,舉例來說:

使用者的全名透過 User.inc.php裡面 的getFullName(582行)  函式回傳,這段的程式碼長這樣:

    function getFullName($lastFirst = false) {
       if ($lastFirst) {
          return $this->getData('lastName') . ', ' . $this->getData('firstName') . ($this->getData('middleName') != '' ? ' ' . $this->getData('middleName') : '');
       } else {
          return $this->getData('firstName') . ' ' . ($this->getData('middleName') != '' ? $this->getData('middleName') . ' ' : '') . $this->getData('lastName');
       }   
    }  

看起來相當合理,但是Editor & Reviewer 的姓名卻不是放在相同階層的class中。這兩者都是放在DAO 等級的類別中,以Editor 為例 就放在 EditAssignmentDAO中把資料塞進類別變數的函式_returnEditAssignmentFromRow中:

 
 function &_returnEditAssignmentFromRow(&$row) {
   $editAssignment = &new EditAssignment();
   $editAssignment->setEditId($row['edit_id']);
   $editAssignment->setArticleId($row['article_id']);
   $editAssignment->setEditorId($row['editor_id']);
   $editAssignment->setCanReview($row['can_review']);
   $editAssignment->setCanEdit($row['can_edit']);
   $editAssignment->setEditorFullName($row['first_name'].‘ ‘.$row['last_name']);
   $editAssignment->setEditorFirstName($row['first_name']);
   $editAssignment->setEditorLastName($row['last_name']);
   $editAssignment->setEditorInitials($row['initials']);
   $editAssignment->setEditorEmail($row['email']);
   $editAssignment->setIsEditor($row['editor_role_id']==ROLE_ID_EDITOR?1:0);
 $editAssignment->setDateUnderway($this->datetimeFromDB($row['date_underway']));
 $editAssignment->setDateNotified($this->datetimeFromDB($row['date_notified']));

 HookRegistry::call(‘EditAssignmentDAO::_returnEditAssignmentFromRow’, array(&$editAssignment, &$row));
 
  return $editAssignment;
  }

請注意第八行的地方…
你說找到頭昏是不是正常現象…. 所以我覺得程式的一致性邏輯很重要,怎樣奇怪都沒關係,你要把全名的組合函式放到DAO層級或是到 Model 層級都沒關係,重點是要一致阿!!!!

新玩具 MSI wind u100

e5bdb1e5838f052

過年前買了MSI Wind U100 這台小筆電,作為外出之用。macbook 萬般好,就是太重,每次去學校都約莫要背著半小時(外加步行)以上,除了筆電有時還常常要帶書,搞得整個很像國中生。其實如果沒報告的話,不帶也行,但是每次不帶都不太順… 所以還是帶好了….orz

會買這台主要是因為很想要一台可以順暢安裝linux 的筆電,這樣在外面寫些程式會比較方便。這台安裝ubuntu 相當順暢,除了無線網卡要自己裝deb檔外,大致上的使用都沒有什麼問題。

三個usb 孔是意外的好處,3G網卡免安裝雜七雜八,網路管理員真的好用!!!

不過有幾個缺點是我在爬文的時候沒爬到的….

  1. 三小鍵  你可以看到右下角shift 鍵旁邊的 <,>,/  三劍客只有正常按鍵的一半大小,這對一個堂堂七尺的男兒來說,是種羞辱。我的小指到目前為止還沒辦法正確按到正確的位置,哼哼。
  2. 跟 hp mini 100 比起來鍵盤還是比較小
  3. 6 cell 的電池感覺起來還是頗重(整台約莫有1.3kg)
  4. fn+ key 的那些圖案我一開始都看不懂…….

幾點 ubuntu 8.10 在上面的問題

  1. 耗電量比較兇,正常情況下(沒聽到風扇整個跑起來的聲音)大概只有三個小時。但是xp 可以到快5個小時。還沒找到解決方法
  2. 升級一次kernel 無線網卡的驅動程式就得重裝 :(…   2.9.11 的kernel 還把乙太網卡的驅動給破壞掉…..
  3. 雙螢幕模式時,外接的螢幕最高只能選800*600 ….
  4. 投影切不出去…(Fn+F2)

不過大致上令人很滿意了,未來兩年內大概會有更令人滿意的機種出現吧!!!

紅包

要收假了…心中萬般不捨….

這次過年最大的斬獲 就是回去的時候,我叔叔給了我一個紅包(他們新公司的新產品):

e5bdb1e5838f049

據我叔叔所說,我想這應該就是類似ardonid的東西 ,不過目前看起來尚未有 arduino 一樣模組化的很好。程式庫也還在發展初期,而且定價好貴…orz…

左邊的就是主要的元件,右邊那個是ac電源,不過主要元件接上usb 就也有電力可用了。

看起來蠻好玩地(而且免錢XD)… 但是要自己接線我就不會了…   還有很多要學阿 😛

今年的新年新目標:「自制力」。 這樣做事的效率應該會好很多阿!!!