Bret Victor – Inventing on Principle
Bret Victor(简历) – 苹果公司的UI交互设计师(大神级的人),在 CUSEC(Canadian University Software Engineering Conference) 上做了一个题为 “Inventing on Principle” 的演讲(vimeo视频链接),这个演讲中展示了五个示例:
用程序画树。如何把程序绘图变成实时的,如何把程序和图映射起来。
游戏调试。在实时编程的基础上,可以更容易的让你看到程序参数对游戏的调整,甚至对游戏过程的可视化调试。
算法调试。在写二分查找算法时可以实时看到程序的执行过程。边写边看到。
电路图。可以实时地看到电路图中各个部件的对1/0信号的处理。
动画。一种比flash制作动画更NB 的方法。
下面是优酷上的视频——你一定会被示例中的那些编程工具所震撼!
不过,Bret并不是在说什么编程,也不是在说什么技术,他是在说 How to live your life。
他认为,在我们的生活当中,我们听到太多的诸如:“跟随你的喜好”、“跟随你的兴趣”,“跟随你的热情”之类的东西,但他更认为,更应该是“跟随一个原则 follow you principle”,他认为真正能让你把事做正确的不是你的喜好,不是你的兴趣,也不是热情,而一个做事的原则。在这个演讲中Bret介绍了他自己的原则和他人的原则,供你参考和并找到你的原则从而live in your life。
Bret的原则是,他觉得人总是会有很多想法,而把这些想法变成现实是一件非常重要的事,也是最难的事。他觉得当我们在写代码实现一个东西的时候,在实现一个游戏,算法,电路,动画的时候,人很难把自己脑海里的东西映射成现实的东西,因为一个想法变成现实,需要反反复复的调整,如果看不见,就没办法调整。而我们在写好程序,需要编译程序,运行程序,才能看到结果,之后,有些东西发现并不满意,需要做调整,于是需要猜着去改一下程序,再编译运行,再看结果,于是,这个调整的过程相当令人痛苦,因为代码里的那些数字,我需要一点一点地去试,调大调小,总是不能调到我们想要的结果,从而让人无法正常思考。所以,他的原则是——创造者需要对自己的创造的东西有实时的反馈。于是出现了视频中的实时编程的那些示例。(其实,这个东西和Firebug很相似,我还记得以前和朋友说过,如果写C/C++程序也能有像Firebug的这种工具就好了,现在果然离实现不远了)
Bret说起他的动机的时候,他说,他把这个事当成了一种责任而不是一种机会。他说,这就好像我们听到的:审查机制,性别歧视,环境破坏,违反人权等这些问题,绝大多数人是不会把这些事当成一个机会的,而那些有责任感的人会把解决这些问题当作一种责任。同样,当他看到我们被工具或环境限制住了我们创造东西的过程时,他并不觉得这是一个可以发明更好的产品的机会,甚至这是开创自己事业的机会,或是对社会做贡献的机会。他认为想法相当的宝贵,如果一个好的想法推动不了的时候,他会很难受,就像看到一场灾难一样,他觉得,让大家的想法能够顺的进行,这是他的一个责任。
后面他,举到了很多人的例子,
Larry Tesler – 著名的计算机科学家,前苹果的首席科学家,图形界面的创造者(在“SteveY对Amazon和Google平台的长篇大论”中提到过他)。他在70年代看到人们在使用电脑文本编辑器时,需要按某个键进入某种模式(Mode),然后才能输入(VI)。他觉得这样操作起来很复杂,也很不舒服,所以,他为自己设定了一个原则——“Don’t Mode Me In”,他做了很多尝试,做了一个叫Gypsy的文档编辑器,可以通过拖拽移动字符,而且他还发明了复制粘贴,对于一个没有使用过电脑的人来说,只需半个小时的训练就可以输入文字了。Larry把消除模式设置成了自己的原则或责任。他的个人主页是:http://www.nomodes.com,他的Twitter是 @nomodes,甚至他的车牌也是nomodes.
Elizabeth Cady Stanton,100年前的一个美国的女权主义者,当时,她主张妇女的各项权益,比如参与投票,所有人都以为他疯了,今天看来,她是对的,她消除了性别歧视。这和Larry 很相似,他们都看到了一种文化上的错误,并要预见到了未来的样子,他们都为自己设定了一个原则或是信仰,而去为之奋斗。
Doug Engelbart,美国发明家,瑞典人和挪威人后裔。最广为人知的是他发明了鼠标,另外他的小组是人机交互的先锋,开发了超文本系统、网络计算机,以及图形用户界面的先驱;并致力于倡导运用计算机和网络,来协同解决世界上日益增长的紧急而又复杂的问题。
Alan Kay,美国计算机科学家,在面向对象编程和窗口式图形用户界面方面作出了先驱性贡献。2003年获得图灵奖。目前担任Viewpoints研究院院长,加州大学伯克利分校兼职教授。曾任Apple公司院士,惠普公司资深院士。他有一句尽人皆知的名言——预测未来的最好办法就是创造未来。他相信如果小孩能够熟练掌握电脑,如果写程序是和读书写字一样成为基础知识,那么人们就掌握了一种新的方式去思考,新的方式去了解世界。他所有发明的东西都基于他自己的原则或信条。
Richard Stallman,是美国自由软件运动的精神领袖、GNU计划以及自由软件基金会(Free Software Foundation)的创立者。作为一个著名的黑客,他的主要成就包括Emacs及后来的GNU Emacs,GNU C 编译器及GDB 调试器。他所写作的GNU通用公共许可证(GNU GPL)是世上最广为采用的自由软件许可证,为copyleft观念开拓出一条崭新的道路。他的原则,是软件必须是自由的,他认为软件的自由是关乎道义上的对错的,关系到人类的自由。他没车没房没结婚没孩子,也不用手机,但他有非常忠实自由的信条和责任感。
Bret通过这些例子继续强调——他并不是要大家样做,他只是给大家一个选择。你可以成为一个非常优秀的工程师,非常熟练地掌握了一些技术,你也可以为这个社会做很多贡献,这是成为一个工匠的路,也是大多数人走的路。不过旁边还有一条路,值得去走,那就是解决问题的路,这条路往一头走是创业者,往另一头走是学者,但你需要找到一个你自己的原则,你可能需要很长时间才能找到你的原则,Bret说他花了10年才搞清楚他的原则是什么。
个人以为,Bret所说这个原则也好,信条也好,是一种对自己创造力有引导性质的原则和信条,并不是那些已有的原则或信条,否则那只不过是在跟从了,所以,这些原则和信条应该是新的东西,是自己悟出来的东西,这样的原则和信条会导致你有一种责任感向正确的方向去创造。当然,这些原则也不是那些非常笼统和模糊的东西,比如,要创业开公司,要设计出有更好的用户体验的东西,要创造有很多用户使用的产品,或是有更好的收入什么的。其应该是明确的,有指导性的,就像Bret他自己的信条一样——“创造者需要即时的反馈”,就像他演示的那样,当你在一行一行修改你的代码的时候,你可以立即看到代码运行的过程和效果。这个原则可以指导着他要对一切达不到这个原则的东西负责,并引导着他知道应该做什么,不应该做什么,从而去创造新的东西,解决问题。
当然,世界是多元的,每个人都有每个人自己的原则。不同的原则必然会把你导到不同的路上。不管你是否同意,视频中的那些演示是相当令人震撼的。
转载于酷壳CoolShell 无删改 仅以此纪念陈皓(左耳朵耗子)
现在用的 jellyfin ,越看越觉得 UI 不好看,plex 比 emby 便宜好多但是靠谱的代付不好找 打算先买个 plex 玩玩,后面再考虑要不要换 emby ,还得…
如题,中国银行的一类卡,正打算还信用卡,从余额宝里提到银行卡里,还款显示无法扣费然后发现,连转到其他行的卡里也不给转最后是一千一千的分次转到同中国银行的另一张二类卡里,但最后的…
以前本站推荐过麻省理工的C/C++的课程,今天在他们的网站看到上有一组关于计算机科学和编程导论的免费公开课(视频是Youtube的),我看了几个课程,我觉得讲得很系统啊,而且有…