谈谈鸡婆设计师
February 19 2016

面向客户端的工程师一项占了很多时间的工作是教育某些鸡婆设计师为什么人生不是圆满以及导致一些事情并不能永远尽人意。本文力图以诙谐的语言从技术角度介绍设计师的种种鸡婆之处。

面向互联网时代从业的设计师有若干种种,然而几乎所有设计师都不懂代码。大多数设计师出身于平面媒体的设计,被自我或者导师教育各种美学、被自我略带优越感的强迫症要求“精确到一像素”,从而导致了很多设计师凌驾于工程师之上,完全搞不懂“天马行空”跟“可行性”之间的区别和联系。我短暂的一年前端工作中,几乎每天都要跟这位以色列来的设计师C君斗智斗勇。她是一个无比鸡婆的设计师,具体体现在以下几个方面:第一,C君对“居中”这一属性有着偏执的狂热。她希望这个世界上所有的东西都要水平、竖直居中。就连一个按钮内的文字,代码上明明已经居中,她的鸡贼眼却每次都要要求把按钮的文字向上提1.5个像素。这让人啼笑皆非,因为总所周知,浏览器是没有所谓0.5像素的,但C君是一个设计师,所以她不懂。如果是“对齐”方面,1像素可能非常重要,但是对于这种数学上已经完美实现,鸡贼眼中却无法实现的居中,我实在无法理解浪费十分钟来调整这些对产品、对生命有什么意义。第二,C君对自己的设计有种变态的喜爱,因此要求设计师必须百分之百完全还原其设计,不得有误,违者当斩,尽管她的设计是多么漏洞百出。总所周知,百分之百还原是不可能的,不然就不需要工程师,只需要设计师做好设计,直接把设计图贴上客户端就可以了(事实上,在很久以前这是一种通用的做法,因此设计师又名切图师)。之所以会有设计师与工程师之间的合作与分工,是因为设计图不可能百分之百还原这一宇宙真理导致的。很多设计师思维狭隘,以为客户端为所见即所得,而从未考虑类似性能、重用等一些只有工程师才会思考的问题。在最近的这个项目里,C君天马行空地在公司主页搞了一个大动画,并且要求鼠标滚动时动画要相应变动,并且动画还要自适应屏幕尺寸,并且动画还要能随时停止、倒着播放,并且动画必须要占据全屏、并且全屏之下还要有自由滚动的页面,等等。这几条变态的要求几乎汇聚了web前端界几大难题:浏览器兼容性、移动设备动画自动播放问题、全屏滚动问题、触摸兼容问题等等。变态的C君已经放弃了一个设计师应有的尊严,开始把设计变成一项无聊的运动。

C君代表着千千万万从传统平面时代转过来的面向客户端的设计师。这些设计师也许在设计平面媒体时有过人之处,而在互联网时代却完全不懂一个最基本的道理:

这个世界上的设备的屏幕尺寸不是完全一样的。

这是一个被很多设计师完全忽略的常识。面向互联网时代,不管是web还是app,用户有无数种可能在不同尺寸的设备上去看工程师的作品,然而无数设计师却企图用一张或者几张简单的设计图来展现,最无聊的是为了显得自己的专业,在奇奇怪怪的地方加上不可理喻的标注。举例说,多数设计师没有听说过一个叫自动约束的概念,因此会做出如下标注:一个按钮宽度必须为100,离屏幕左侧必须为50,离屏幕右侧必须为50。当我问他,如果用户缩小窗口怎么办?回答是这是工程师的事情,但无论如何你必须保证按钮宽度100,离左右侧分别50。

所谓的设计师应该全体被赶去做海报、PPT、logo、视觉平面、房子、建筑等这些不会动的东西。面对丰富多彩变幻多端的浏览器或移动设备,设计师们通常脑筋转不过来而纷纷死机。在我看来,以面向客户端为主的代码界完全不需要设计师这一职业,本来他们也是大多从平面媒体转行而来。我们更需要的是可以被称作工程师的UI规划师。UI规划师必须会读代码,并且有过实际的项目经验,才可能完全理解代码工程师面对某些问题的思考方式和处理办法。因此面向客户端的设计师应该从现有的工程师中诞生、或者由一些有远大志向和智力的设计师转行而来。

CURRENTLY

Software Engineer at Yahoo!

PREVIOUSLY

Full Stack Engineer at Prosper Marketplace

PREVIOUSLY

Front End Engineer at BillGuard (Acquired by Prosper)