[公告] 網站更名

即日起,本站站名從 Happy Computing 改名為 Michael Talks,除了原先介紹電腦方面的文章外,也會增加一些對電腦科技或其他方面事物的個人意見。 筆者在撰寫一段時間的部落格後,發現電腦技術的變動實在太快,尤其是一些函式庫的 API,一陣子就會不太一樣。另外,英文的資料其實已經相當豐富,如果對於每一樣新技術都要寫成部落格文章,以筆者個人之力其實時間也不允許。所以,筆者將部落格文章的方向改變,以介紹加上評論的方向來撰寫文章。 筆者在學習一段時間的電腦以後,發現電腦技術推陳出新,以個人的力量,其實是追不完的;就像是網路上很有名的一篇部落格文章「You Can’t Learn Everything.」。我們不僅僅要花費時間學習這些技術,還要撰寫程式、維護現有程式、管理...
「點我閱讀更多」

簡明重現範例的重要性

SSCCE (Short, Self Contained, Compilable, Example) 是指能夠展示某個概念的簡單範例,筆者暫且稱之為簡明重現範例。在程式設計討論區,程式碼也是用來溝通的一環;然而,筆者在一些程式設計討論區,時常看到不良的反例,往往都是因為撰文者缺乏 SSCCE 的概念。筆者有感而發,因而撰寫這篇文章,希望對於程式設計學習者有所幫助。 有些程式設計初學者可能真的不知道如何撰文,只寫了一些關於自己如何操作電腦等模糊的敘述,有時候還會帶有一些情緒的字眼,像是「很急」、「救救我」等,文章中完全沒有任何可用的程式碼。說實在的,由於幾乎沒有可用的線索,即使想幫忙,也沒有未卜先知的能力。最後這種文章通常得不到什麼有意義的結果。 有些撰文者很天真地貼了某個部落格文章...
「點我閱讀更多」

[公告] 文章遷移

讀者或許已經發現本站有幾篇文章會跳轉到新站台。這是因為筆者最近試用了一陣子 Hugo 後,決定將一些長篇的教學文章搬移到新站台。筆者在這裡說明我們的想法。 原先筆者一直都是用 Jekyll 撰寫部落格。但是,Jekyll 比較適合純部落格,對於其他類型的站台,就相對不適合,像是筆者必需額外增加導引的按鈕。筆者最近試用 Hugo 後,覺得 Hugo 比 Jekyll 適合做為一個通用的 CMS 替代品,因此,決定慢慢將一些文章轉過去。這個部落格仍然會繼續營運,但僅用於發布單篇文章。但筆者目前新網站還在試行中,待一陣子才會確定是否要繼續採用 Hugo,這段搬遷時間請讀者見諒。
「點我閱讀更多」

Go 程式設計系列 (2):使用情境

即將跳轉至新頁面,或自行前往這裡。 在上一篇文章中,我們簡單地介紹 Go 的特性,相信讀者已經對 Go 有一些初步的了解。接下來,筆者會在本篇文章中討論 Go 的長短處以及 Go 的使用情境等,讓讀者可以進一步考量是否要在下一個專案中使用 Go,畢竟,當專案成長到成千上萬行的程式碼後,重寫的代價是相當可觀的。 首先,筆者要提醒各位讀者,雖然 Go 語言相當簡潔易學,寫起來近於腳本語言,但 Go 語言並不是完美無缺的;Go 語言刻意地在語法機制上保持簡單化、最小化,反而缺乏許多現代語言常見的特性,筆者列出一些實例: 缺乏泛型 (generics),這是最常討論的議題,詳見此文 缺乏函式重載 (function overloading) 缺乏運算子重載 (operato...
「點我閱讀更多」

Windows 求生手冊 (1):緣起

即將跳轉至新頁面,或自行前往這裡。 「Windows 用得好好的,怎麼需要求生?」一般使用者大概只有電腦出問題,像是中電腦病毒 (computer virus) 或是勒索病毒 (ransomware) 時才會想要找求生之道。不過,這系列的文章並不是防毒或防駭手冊,也不是電腦 DIY 大全。這系列文章,是筆者經歷 Winodws、Mac、GNU/Linux 三種系統之後,所發想的文字記錄,目的在於記錄一些讓 Windows 更好用的方式,畢竟有時候還是會用 Windows 做事。這系列文章有一些偏向 GNU/Linux 使用者的觀點,但筆者會平實公正地敘述自已的想法。 Windows 系統會讓人覺得不好用,主要有以下兩點: 缺乏良好的命令列 (console) 環境 對 ...
「點我閱讀更多」