2015年4月7日星期二

OACC 開源會計軟件 - 為何要再發明輪子?


"為何要再發明輪子?"  在網絡上, 不論中外的論壇中, 每當有人提出要自己開發一個會計程式, 總會有其他人提出這個疑問. 是的, 在實體及網絡世界中, 收費的, 免費的會計程式多如牛毛, 確實好像真的不應該浪費自己的時間去重複他人已有的成果.

但是, 如果仔細點想想"為何要再發明輪子?" 這個問題, 你或許會發現這其實是一個偽名題. 根本那些人, 他們不是想要發明會計程式, 他們是想創造屬於自己的會計程式. 那為什要自己動手弄一個呢? 原因可以很多, 例如不滿現有的會計程式, 或者想創業, 或者想挑戰自己, 又或者只是為了滿足自己的興趣 (如我).

但在這裡我不想探討動機是什麼, 我是想告訴大家, 自己一手一腳去開發一個會計程式有什麼好處. 在繼續看下去之前, 我希望大家想想: 大家都有想像過自己的愛情故事, 但為何我們不是誰也可以寫出一本愛情小說?

增強將思想化為實物的能力:
現實世界是由一連串的事件所組成, 而電腦不是. 雖然不時有人讚嘆現代電腦的強大運算能力, 但其實電腦還是很笨的. 它不懂理解一連串事件的含意, 先後關係等抽象的東西. 因此, 當你思考如何讓電腦執行你想要的工作, 你首先就要透徹地了解這些 "一連串事件", 換句話說, 就是你要懂得如何去簡化, 歸類這些事件.

增強邏輯性思考的能力:
在簡化, 歸類之後, 你就要開始組織這些事件. 組織事件不是一件輕鬆的工作, 因為在過程之中, 你會發覺這個世界的所有事情都是你中有我, 我中有你, 而你卻要在這些剪不斷理還亂的關係中, 理出最重要的那層關係. 這代表了你要思考, 你要捨棄, 然後再思考, 再捨棄, 直到想無可想, 再無可捨棄為止. 其中你會碰到無數的矛盾, 你會面對重重思考的障礙, 可同時你也在不停地強化你的邏輯思考能力.

增強前瞻想像的能力:
正如前述, 電腦是很笨的, 它不只不理解我們, 它更只懂守著它自己的那一套規則. 於是簡化, 歸類, 組織事件後, 你更要開始想像電腦會如何回應我們. 亦因此, 你要學會前瞻想像, 否則你辛辛苦苦的努力可能只得著電腦一個無情的拒絕! 

另一方面, 當你開發一項程式, 你不可以只主觀地認為其他使用者都會100%跟著你的思路來使用你的心血結晶. 人們不會像電腦一樣呆呆的跟著你的腳步走, 他們會嘗試挑戰你的邏輯, 因為大部份人都會想走捷徑, 尤其是當他們熟悉了一樣工具之後, 這是人性. 更有甚的是, 你還要想像你的程式所回饋資訊是否足夠滿足你的使用者. 滿足不代表越多越好, 而是適當的資訊量. 這才是最困難的地方.

所以你除了要想像電腦的回應外, 你還要想像你的使用者是什麼模樣, 處於什麼位置, 更要想像他們的行為模式.

當你增強了上述三樣能力, 就算你不是以編寫程式為生, 但它們對你的日常工作有所助益. 如果細心留意, 或許在你身邊比較成功的人士, 很多都精於它們. 思想是很廉價的, 只有可以執行的思想才真正有價值.

想想看, 如果Apple當年也是抱著"為何要再發明輪子?"  這種態度, 今日我們還會擁有 IPhone 嗎?

後記: 這篇可以說是 <自製記帳軟件-原因> 的續章.

沒有留言:

發佈留言