2010年1月20日 星期三

Google GO 語言獲得 TIOBE 評選為2009年度程式語言

TIOBE的年度語言排名又出爐了 ~ Java仍然穩站第一位,php排名提升,python仍然不動,不過由於iPhone的關係,Objective-C 躍昇到12名,而去年11月才發表的Google GO語言則莫名其妙的一下跳到13名...

原文出處:http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

2010年1月16日 星期六

安裝PostgreSQL on Mac OSX

之前Sam使用過資料庫的經驗有Oracle、MSSQL,當然最常依然是MySQL。基於php全球使用人數眾多,而通常與MySQL直接綁在一起變成書籍、課程等,也讓MySQL的聲名大噪。不過最近由於論文要研究一些國外的典藏系統(DSpace),發現他們除了商用資料庫外,也有使用PostgreSQL(念法為post-gres-ql)。PostgreSQL首次發行日為1989,MySQL為1996,所以請不要因為沒聽過它的名號就認為它很新或不夠成熟...

2010年1月14日 星期四

如何做一個出色的程式人員(轉)

轉自 http://blog.csdn.net/lkjxshi/archive/2010/01/07/5149541.aspx
愛這行! ! !
從事任何行業都一樣,只有真正的愛上了這份工作,才會投入熱情,才會在順境中自我警醒,在逆境中尋找突破。這個行業的競爭很激烈,你停下來走,別人就立刻會跑步超過你,沒有對這一行業的一種熱情,就很難在困境中保持一種執著的態度堅持到底。
踏踏實實“紮馬步”
今天無意中看了“校長”的“程序員&司機”,其中談到了關於程序員速成的問題。其實速成班畢業的“系統殺手”早已在遍布大江南北,只是在互聯網時代,互聯網的應用型軟件生命週期越來越短,業務驅動主導的情況下,這種速成方式看起來反而提高了企業生產效率。但這樣的人才也就只能寫幾個Facebook上的插件應用或者iGoogle上的Gadget,真的要出Google,Amazon,Yahoo改變互聯網世界的企業,還是需要踏踏實實先學“紮馬步”的人。

2010年1月13日 星期三

反三段論

剛在JavaWorld@TW上看到有某大軟體公司在徵人,並且面試題目考的是相當有難度的Syllogism
三段論是由亞里士多德創立,用於推出結論。至於反三段,是人們日常思維中常用到的推理模式。其形式如下:
如果P並且Q則會R
所以,如果非R並且P則會非Q
或者
如果P並且Q則會R
所以,如果非R並且Q則會非P

2009年12月30日 星期三

未來五年內開發者所需的技能

剛看到這篇有趣的文章,其中提到:
1: One of the “Big Three” (.NET, Java, PHP) - 學會三大巨頭之一(.NET, Java, PHP)
2: Rich Internet Applications (RIAs) - RIA技能(Flash, Flex, JavaFX, Sliverlight)
3: Web development - 網站開發
4: Web services - 網路服務開發
5: Soft skills - 請放眼IT產業未來的觀點,並觀察公司外的走向
6: One dynamic and/or functional programming language - 雖然Ruby, Python目前還不是主流語言,但它們觀念是,所以有朝一日爬升上來時,你會的話就很吃香

2009年11月25日 星期三

免費的雲端防毒軟體 - Panda Cloud Antivirus

免費的雲端防毒軟體
http://www.cloudantivirus.com/en/
以「第一個沒有更新選項的防毒軟體」聞名全球的Panda Cloud Antivirus,能以最快最即時的雲端防護機制來對抗最新最危險的病毒威脅。別說不可能,藉由集體人工智慧的幫助,Panda先進的伺服器群組能在雲端收集來自世界各地用戶的惡意程式資訊,並且自動進行病毒碼辨識,進而將新的惡意程式病毒株在短短幾分鐘內歸檔完畢。集體人工智慧結合了本機電腦偵測技術與即時的雲端掃描機制,能在提供最強大防護的同時,帶給電腦最低程度的資源耗損(僅需消耗20MB的記憶體容量)。

2009年11月11日 星期三

Google發表新的程式語言「Go」

轉載自http://www.ithome.com.tw/itadm/article.php?c=58033:

Google周一(11/10)發表了新的系統程式語言「Go」,以加速程式開發。Go結合了像是Python動態語言的開發速度,以及擁有C及C++語言等編譯語言的效能及安全性,同時也是一個開放源碼計畫。

Google表示,近十多年來運算環境變化很大,但卻沒有新興的系統語言,導致軟體開發跟不上電腦發展速度。例如有愈來愈多的開發人員不喜歡Java及 C++的笨重型態,因而轉向動態的Python與JavaScript語言,而現在受歡迎的系統語言亦未妥善支援基本的垃圾蒐集或平行運算概念。

這也使得Google認為現在值得嘗試新的語言。Go是一個並行的,具垃圾蒐集功能的語言,並可快速編譯。它在單一電腦上可於幾秒內編譯一個大型的Go程式;而且提供一個軟體架構模型以讓相依分析更容易,並避免有過多的檔案及程式庫;Go的型態系統沒有階層,因此不用消耗時間定義各種型態的關係;Go可支援垃圾蒐集、同時執行及通訊;而且Go的主要設計之一就是用來撰寫多核機器上的系統軟體。

Go目前仍在實驗中,Google並鼓勵具冒險精神的開發人員可以試用該語言。雖然Google也希望可以採用Go來撰寫內部使用的伺服器軟體或其他軟體,但由於其功能尚未成熟到可供大規模部署,因此現階段僅進行小幅測試,例如golang.org後端的伺服器就是以Go所撰寫。

Go也是Google員工20%計畫的產物,Google允許員工可花費20%的時間於自己有興趣的專案上,Gmail實驗室亦是源自於該計畫。

------------------------------------------------------------------

GO 官方網站: http://golang.org/

Google IO大會上Guido van Rossum對於GAE的演講

由於python創始人Guido van Rossum被Google收錄進去...所以python可說是google開發的主力,而GAE也是基於python + django的環境改寫而成, 我們來聽聽去年Google IO大會上Guido van Rossum對於GAE的演講

然後也有介紹python的特性與其他相關部分

2009年10月17日 星期六

Flash Loader 載入外部 swf 時 stage=null 的問題

剛剛寫as的時候發生一個問題,由於被載入的swf裡頭有運用stage作場景控制,故被主頁載入時出現 TypeError: Error #1009: Cannot access a property or method of a null object reference.

原因在於被載入的swf在主頁尚未將它加入至場景上時就呼叫了建構子,因此,我們可以運用以下的方法解決:

public function Page05DocumentClass()
{
    if (stage){
        initApp();
    } else {
        addEventListener(Event.ADDED_TO_STAGE, initApp);
    }
}
        
private function initApp(evt:Event=null):void
{
    stage.scaleMode = StageScaleMode.NO_SCALE;
    stage.align = StageAlign.TOP_LEFT;
}

先判斷stage是否存在,如不存在則以stage.ADDED_TO_STAGE作為啟動的依據。
但...這感覺是bug...

2009年9月10日 星期四

創造「耐心練習周期」(轉)

的確我是一個極度沒有耐心的人,所以要從現在開始訓練...

耐心是心的一種性質,可以藉由蓄意的練習而大幅提升。我發現可以磨練耐心的一個有效方法,就是創造真正的練習周期,也就是在心中設定練習耐心藝術的時間周期。生活本身變成了一間教室,課程叫做「耐心」。

你可以從短短的五分鐘開始,然後逐漸延長你的耐心的容忍度。剛開始的時候,不妨告訴自己:「好,接下來這五分鐘,我不要對任何事情生氣,我要保持耐心。」你將會有驚人的發現。保持耐心的企圖,尤其是你知道只要忍耐一下子,就會立刻加强耐心的容忍度。耐心是那種食髓知味的特質,你將會發現,你確實有能力保持耐心,即使時間長一點也可以。日子久了以後,你甚至會變成一個很有耐心的人。

當我們保持鎮定時,不讓自己生氣或懊惱時,就可以冷靜而堅定地控制行為,這比發怒生氣有效多了。這個讓心靈朝耐心努力的過程簡單易學,重要就是把持自己想發脾氣的情緒,不再鑽牛角尖。

有耐心讓自己得以維持心靈的平衡。没有耐心的話,一件小事就會化為緊急大事,以嘶吼、挫折、傷感情、和高血壓收場。這樣真是不值得,不論你是需要跟孩子、上司、或一個不可理喻的人打交道,如果你不想「為小事抓狂」,改進你的耐心功力,成就高度的EQ,這是最佳有效的調合劑,就從現在開始吧!