2015年10月6日 星期二

糟糕!人工智慧將取消寫程式的工作!

喔,我好害怕喔~

在我們這個領域,總是有人不斷的在研究如何自動生成應用邏輯的(他們沒有問題,是很認真很努力的一群人),而隨著這些軟體自動生成領域的小步向前,也每隔一段時間就會有某『未來學者』或『趨勢大師』在那邊寫文章闡述(或危言聳聽?)這些令人興奮的科技將如何「大規模地」消滅軟體開發的工作。

這一次是這篇文章:工程師的苦命沒有極限:電腦也來搶工作,只能淚眼跟高薪時代說掰掰

每一次這樣的文章出現,我都有點壞心的希望能有越多人去相信這些本身寫不了幾行程式、做不了什麼真正嚴肅系統開發的傢伙,能真的多騙一些人去幹些什麼別的就太好了:畢竟有價值的事少人做,我就好生存啊。

玩笑開完,講點嚴肅的,這些傢伙倒底搞錯了什麼?怎麼每次都會想要挑戰這種不會贏的題目呢?

他們搞錯的,就是對『軟體系統的開發本質上到底是什麼?』有錯誤的理解。

軟體開發從以前到現在,最困難的從來不是寫程式本身,而是描述並界定清楚需求,『說出需求究竟是什麼?』這件事就是最核心、花費代價最多最大、也是重要的事。

所以,直到人類的腦部可以插入生化通訊模組,能直接憑心電感應跟電腦溝通,於是不論人的心意是如何朝三暮四,電腦都可以毫無差錯Real Time的知道人想幹嘛,並自動生成或動態修正出人們要的程式之前,我都不擔心電腦會搶走程式設計的工作。

只要電腦跟人腦不合而為一,電腦對於『自動寫出程式』這件事情再怎麼厲害,也辦不到對『某人所獨有、善變且前後矛盾的反邏輯、反理性的天花亂墜』做出正確的判斷而滿足該某人的能耐的。

從歷史來看,先自然語言、再WYSIWYG GUI程式設計、後來UML,人類最高階的人機溝通語言界面其實是往越來越明確、越來越嚴格、也就是退化的方向走的,為什麼呢?

那是因為人終於知道問題從來不是出在機器、而是出在自己身上,真正認真做事的人搞清楚了:

『WTF DO YOU REALY WANT?』就是那個最初也是最終的難題。