施明德倒扁活動,稱陳水扁是「禮義廉,無恥」。我說啊,這還真是手下留情,抬舉陳水扁了。陳水扁是無禮、無義、無廉、無恥,四無啊。
「學校教要誠實」,可是陳水扁教「做官要為長官說謊」。
記得聯合報有篇社會新聞,標題寫著「學校教要誠實,子證母撞人」聯合報民國95年8月25日A8版訊,記述一名婦人開車載兒子,路上擦撞機車後逃逸。事後兒子向警方作證時表示,當時就告訴母親撞到人了,婦人責怪兒子多嘴,可是兒子說「學校教我們做人要誠實,我實話實說。」
反觀陳水扁,在他展開迷航之旅回來後,還大言不慚地教導人們作官的人有為長官說謊的權力。當時被他害慘的駐美代表程建人,日前退休時意有所指地說,作官是不能說謊的。陳水扁日前也承認以不實發票申報國務機要費。學校教要誠實,陳水扁教可以說謊。我很想請教一下陳水扁,他是拿哪一套標準教育他的兒子、女兒、女婿和外孫?我父親當年沒有用陳水扁的超低道德標準來教養我,我將來也絕對不可能以那種超低標準來教我兒子啦。用那種超低道德標準來教養後代,還有未來可言嗎?如果陳水扁聲稱自己是「本土政權」的代表,按照他可以為長官說謊的邏輯,那些「本土政權」人士講的話,又有幾分是可信的?若要請以前100分的陳水扁立委來評論現在這個18分的陳水扁,大概也要說「這個人沒救了」。
在 C++ 剛出現的時候,大多數 C++ compiler 引入了一個新關鍵字 'inline' ,用於解決個體行為 (methods of object) 的部份效率瓶頸。直到 ISO C99 時,才正式將 inline 定於規範之中。不過多數的 C/C++ compiler 只將 inline 用於 C++ program 中,並未延伸到 C program (*1)。'inline' is a keyword of ANSI/ISO C99. Some C/C++ compilers do not allow to use this in C program. '__inline__' is a keyword of GNU GCC. Some compilers use '__inline'.
)。
GCC 最晚在 2.9 版 ,為 C program 加入了一個擴充關鍵字 '__inline__' (*2),使得 programmer 可以在 C program 中使用 inline function 。請參考 GNU GCC Info document setcion 'An Inline Function is As Fast As a Macro'. 說明文件意簡言骸,我將配合程式碼說明 inline function 在 C program 中運作的相關細節。
七月底參加2006IBM開發者大會時,有個議題是「軟體前景大師談」,對一個我已知的事實,提出了一份數據。資訊軟體先進國家,如美、歐、印度、乃至日、韓,資訊軟體與資訊硬體的產值比平均是 2: 1 ;臺灣的情形卻是 1: 15 ,不但相反,而且是數倍大的落差。從這個數據來看,則臺灣的資訊軟體業在全球的地位,只能排在第三流以後。
"MinGW" 是取 Minimalist GNU for Windows 計劃之意,其目標為提供一個可在 Win32 平台上開發 Win32 native code 的 GNU GCC tools ,而非提供 Unix 程式移植到 Win32 平台之用,此即為其 Minimalist 之意。 2000年時,我曾在「安裝 GCC 2.95/Mingw32」說明過 MinGW 。不過那篇文章中的資訊已經過時了,現在 MinGW 的正式網址為 http://www.mingw.org/ 。
我日前看了「那些 Bug 是怎麼找來的?」這篇文章,裡面提到用 Bug 數量作為軟體品質的管理指標。管理學有云「可量化者方能管理」,可量化者就是指標項目,諸如一小時的產品生產數量、一天完成的工作項目等等。然而,錯定指標的例子也比比皆是。在軟體工程上,最經典的採用不適當管理指標的案例,就是用「程式行數」來管理工作進度了。就我所知,在理論或實務上,都不是用 Bug 數量作軟體品質管理的指標。此處所說的軟體品質管理,指的是開發過程中的品質管理,交貨時,理論上是無 Bug 的。既然選擇了不適當的指標項目,自然就產生「Bug 多,品質好;Bug 少,還是品質好!」這種無助於管理的結論。
上週某日早上 (近來閒賦在家,不知今日何日) ,無意中在 HBO 頻道上看到一部關於 1994 年廬安達種族屠殺事件的半紀錄式電影,片名為「Sometimes in April」。這部片不是日前獲得奧斯卡提名的「廬安達飯店 (Hotel Rwanda)」,但兩部電影都是在描寫廬安達種族屠殺事件,而「廬安達飯店」也確有其事其地。
Borland C/C++ 5.5 Compiler 是由 Inspire (前身是 Borland) 免費提供下載與使用的 C/C++ compiler 和相關工具 (我記得大約在 2000 年時就已經發佈這項免費下載的資訊)。檔案不大,下載包約 8.7MB ,但已包含了完整的 ANSI/ISO C/C++ 的核心,包括 STL (Standard Template Library) ,對 ANSI C++ 的支援涵蓋到 C99 的規範內容。就 C/C++ language and programming 教學用途而言,已是非常完整的工具。
如果要開發應用軟體,其實也足夠,只是要自行下載與安裝各式 SDK (Software Development Kits) 罷了。
雖然 Borland C++ 5.5 Compiler 是一套純命令列工具,但配合適當的程式編輯器,我們仍然可以建置出一個方便的視窗整合開發環境 (IDE) 。我慣用的輕量級程式編輯器是 PSPad ,就用它來說明吧。關於 PSPad 的一般性設定請參考它的說明或其他人寫的文章。此處直接說明關於 compiler 的設定。
在 IBM developerWorks 中,有一系列 AJAX 入門文章,短短五篇並附上詳細範例以及參考資料,抵得上坊間數百頁的書籍。我個人就是從這學 AJAX 。
當衍生類別 (derived class) 繼承了基底類別 (base class) 的成員時,常常忘了要初始 (配置) 那些成員,亦即呼叫基底類別的建構函數。這是 OOP 初學者,也是 JavaScript programmer 在實作繼承關係時易犯的毛病。
xmlhttprequest ajax 非同步 thread
在 AJAX 中,用 while 檢查 readyState 是同步模式的做法。這將使整個程式陷在 while 迴圈中,直到 readyState 的狀態符合脫離迴圈的條件為止。最明顯的缺點是頻繁地執行檢查動作,造成程式負載提高。而且這實際上就是同步模式,實作上,還不如明確指定以同步模式執行,即指定 XmlHttpRequest.open() 的第三個參數為 false ,反而較有效率。
在從事經濟學研究的過程中,最讓我困擾的問題在於,通俗著作中充斥了太多錯誤觀念和偏見。在這篇「自由不一定多元」文章中,作者對自由、多元、經濟理性和人的選擇等等內涵之理解皆非正確。經濟學的通識教育顯然出了問題。
日前我參加了 2006 IBM 開發者大會,有幸聽聞尖端軟體工程團隊成員介紹最新的軟體開發趨勢「議程:大師看未來-軟體開發趨勢展望」。原本安排由 Dr. Ivar Jacobson (UML 創始人之一) 主講,可惜因颱風作梗,改由陳博士 (從 Rational 時代就跟隨 Dr. Jacobson 的團隊成員) 主講。這樣也好,陳博士以中文講說,省去了現場翻譯的語言隔閡。
What is JSON (JavaScript Object Notation): Introducing JSON
目前已有多種方式可在 PHP 中運用 JSON 。個人建議使用 php-json ,這是 C 語言實作的 PHP extension 。
使用 PHP 的 serialize, compress 及 encode 函數,將 serialized object 儲存在網頁表單中。有 ASP.Net 使用經驗者,這即是 ViewState 的原理。
dhtml dom
根據 W3C 關於 HTML DOM 的建議,我使用下例的 ECMAScript 建立 Radio input element 。使用新版瀏覽器,如 Firefox 也得到了我需要的效果。但在舊版瀏覽器,即 M$IE6 中,卻出現了錯誤。 M$IE 會建立 Radio input element ,但是卻無法選取...