THE ALGORITHMS FOR EVERYTHING.
dhew
程序员的终极梦想到底是什么
dhew,科幻作者,热血中年。虽出道甚早,但沉迷游戏以致荒废十年,不后悔,感谢游戏。如今在做自己的游戏(非科幻游戏),同时写作,写科幻小说。代表作《基因战争》。
那天我酒喝多了,好奇地问在场的一位程序员哥们儿:“这个社会对程序员有那么多的误解,你们是怎么坚持下来的?”
那哥儿们估计也喝多了,就给我讲了那个所有程序员都知道的故事。
一开始,只是有人想做个预报天气的软件。这人当然是个程序员,叫什么名字不重要。重要的是,他不想做那种给天气预报配点小清新照片就完事的手机应用。他想从零开始,从气温、风向、风速和云图入手,推测出接下来二十四小时的天气变化。他想要做个预报天气的软件。
程序员们很像手工匠人,天生喜欢从无到有做点什么东西出来。这个程序员也不例外。他从气象学的基本理论开始构建一个算法,我们姑且把它称为算法A吧。就像所有刚刚通过调试的软件一样,算法A出师不利:上线运行那天,气象局预报下午有雨,而算法A预报天晴。
程序员大多对自己开发的软件坚信不移,这名程序员也不例外,于是他被雨淋了个透湿。在反复审视自己的作品后,他把问题锁定在了算法上。并不是算法有问题,而是依据气象学的数学表达本身就不完备。但他没能力把这门科学再往前推进一步。他把源代码上传到Github ,并开了一个帖子,向其他程序员求助,有人回复说,没办法了,上机器学习吧。
和大众想象的不一样,程序员们对机器学习抱着一种爱恨交加的复杂感情。爱的是它让全世界的程序员们都出了次风头,恨的是它完全不符合程序员们习惯的思考方式。