程序开发者应有艺术家气质
原文链接;作者:Fabien Potencier
我利用休假的机会回顾思考了一下每天的工作。作为Sensio公司的CEO,我有机会做很多不同的工作,但是我最喜欢做的事情还是hacking。我说的hacking是为了快乐开发软件,而不是为某某用户去开发软件。正因为这样,hacking在本质上不能成为每天的工作,只是业余时间偶尔为之的东西,是一种爱好,一种热情。开源可能就是分享这些hack的最好方式。
我为什么喜欢hack呢?很显然因为我可以随心所欲的做我想做的事情,选择喜欢的工具和开发方式。但是更重要的是因为我拥有没有时间压力下的反复迭代的自由。开发一个软件是一个漫长的迭代过程。我喜欢去写一些代码,然后忘记它一段时间,过些日子后又回过头来增强它,或者干脆把它扔掉。那么让我们看看艺术家做事情的方式。你认为达芬奇用了多长时间来画蒙娜丽莎?按照这篇维基说的,他在1503年开始画蒙娜丽莎,在1519年他去世之前才完成。什么?一幅画画了13年?那太荒唐了。或许吧,但是艺术家们就是这样做事情的。我在2004年开始开发symfony,但是到了2009年还没有完成,而且可能永远都不会结束。hacking是一种艺术,hacker们应该像艺术家一样工作。hacker和画家在很多地方有共同点,Paul Graham写过一篇极佳的短文和一本书来说这个问题,我就不再赘述了。如果你是一个hacker或者程序员,我强烈推荐你去看这篇文章和那本书。
hacking是一种创造,利用计算机作为表达的媒介。我所知道的最好的hacker和艺术家是Why the lucky stiff。从优美的camping框架到优秀的著作《Poignant Guide to Ruby》,他曾经多产而且是真正的艺术家。我说的是曾经,因为他最近删除了他所有的网上据点。
每一天我都在学习新的途径去书写优美的php代码(谁在笑话我?)。你可以通过symfony代码的演变来跟踪我的进展。
如果你正在寻找“编程艺术”,我已经通过Twitto和Twittee这两个twitter实验做过一些尝试。
回到九十年代初期,我也做过一些类似的实验。那个时候我的目标是在十行代码之内做尽量多的事情。我曾经再法国的ST杂志(1990年8月)发表过一个完成的项目。
如果你问我,一个hacker绝对应该是一个艺术家,但是一个在公司里工作的开发者可以做一个艺术家吗?很不幸,我认为不能。做一名艺术家,你必须拥有时间和自由,但是在为客户服务的时候,你没有。

Comments
Post new comment