Facebook是如何设计的[译]

作者:神采飞扬 来源:前端观察 时间:2009-09-17 13:10:00 


最近,Facebook设计团队在其位于加州帕罗奥多市(Palo Alto)的总部,提到了他们为2.5亿用户设计的原理和方法。 他们特别强调了编写代码的重要性、较早并经常分享设计、从开始到结束都参与到一个项目中、以及不要爱上你的作品等,并多次提到要确保设计师有足够的技术来写代码。


  • Facebook设计团队致力于产品设计、市场、UI模式、品牌以及前端开发。团队由15名产品设计是、5个UI工程师、5个用户体验设计师、4个交互设计师、以及一个1个内容策划。在这家1000人的公司中,共有25位设计师。

  • 通过写前端代码将设计融入到公司的工程文化中去。

  • 一个团队是如何为2.5亿用户设计的?4个前提:贯穿始终、早分享勤分享、自己动手、不爱上自己的设计。

1) 设计师需要从开始就参与进来:从策划到发布。这与其它公司不同。

  • Facebook 花费很多时间以确保设计师能够自始至终参与到项目中。

  • 比如:新版首页在3月份发布。需求简化和提高网站中信息传输方式的效率。同时涉及数据结构和视觉结构。

  • 确定视觉效果后,开始写代码制作原型。边编码边设计允许你看到布局内的真实数据是如何工作的。

  • 平衡权重——在主页设计中做一系列的探索,包括不断的在交互和视觉细节上。

  • 让不同的团队在一起——使用了一个静态的模型以传达设计。通常并不提倡静态设计。

  • 拥有一个能写代码的设计师能够了解细节并快速执行。

2) 早分享与勤分享。与团队和用户分享有助于让设计变得更好。

  • Facebook没有创意总监,而是使用一种从下到上的流程。这对团队分享他们的工作很关键。

  • 开发一些工具以使分享更有效。其中一个工具叫Pixelcloud,充当一个使用评论的在线画廊。自从3月份发布以来,每天有15张图片被添加进来。

  • 简单的来说,工作者包括视觉设计和前端编码以确保Facebook的设计保持一致。所有的工作者都有工作时间来向其它设计师提交反馈。

  • 例如: 隐私向导设计。在开始时,带来12个用户并向他们展示30个原型以确定项目的方向。在开发阶段,带入少一些的用户,并只向他们展示7中原型。

  • 反馈是很好的。尽可能多尽可能早的获取反馈,这有助于节省时间。

3) 自己动手。重要的是你能理解网页代码是如何工作的。所有的设计师都要写一些HTML、CSS,或许还有PHP。

  • 改善设计和开发之间的关系。设计师也能尝试调试代码和创建快速原型。

  • 设计师常常在简化方面做过了头,而工程师则往往提供过多的功能。

  • 理解你工作者的方法,鼓舞你的设计。

  • 快速行动很重要。Facebook 在很多领域有很多竞争者,用户对网络的使用也在不断变化。快速迭代真的很关键。

  • 核心是,Facebook相信最重要的是尽早的发布产品,然后看用户是如何使用的。

  • 原型会说谎。它们缺乏内容和上下文。需要使用真实的内容和页面设计来理解设计是如何工作的。

  • 为了快速转移展开,我们需要尽早制作原型。例如:评论的UI先在内部测试,并在发布给用户前修改。在新闻流程里面,新的设计打破了现存的扫描线。

  • 公司的设计师每周约需要提交40次代码。

4) 不要爱上你的设计。软件只是暂时的——它会一直改变而你需要适应它。

  • 目标就是在持续的改变中保持下来。

  • 不要满足于今天很棒的东西。否则你将落后。作为一个设计师,你需要能够预测并思考接下来的一年将会是什么样的。

  • 在Facebook,最长时间的实际是从2004年开始的前台页面,历时18个月。

  • 例子:全局导航改版。几个月内尝试了很多种想法。甚至在前一天网站头部又变了。

  • 我们的工作从未完成。

  • 对大多数功能做A/B测试。事前清楚的定义好规则,并对它们进行估量。但不要让规则驾驭设计。

译自:Design at Facebook

标签:facebook,设计
0
投稿

猜你喜欢

  • python爬虫(入门教程、视频教程) <font color=red>原创</font>

    2021-10-28 22:04:08
  • js表单检测数字

    2007-10-12 13:52:00
  • 新浪微博文字渐隐效果

    2011-04-29 12:33:00
  • 详解python logging日志传输

    2021-04-20 20:43:08
  • 解析Python中的变量、引用、拷贝和作用域的问题

    2023-07-10 16:54:21
  • 使用Python测试Ping主机IP和某端口是否开放的实例

    2022-01-07 13:14:47
  • 关于mysql与mysqli

    2011-02-23 12:03:00
  • Anaconda的安装与虚拟环境建立

    2022-05-26 01:06:22
  • Python循环语句之break与continue的用法

    2022-04-15 23:13:20
  • python爬取豆瓣评论制作词云代码

    2023-03-14 04:31:40
  • 微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法

    2024-05-11 09:16:42
  • Keras搭建分类网络平台VGG16 MobileNet ResNet50

    2022-07-28 08:03:51
  • Python生成可执行文件之PyInstaller库的使用方式

    2021-11-29 00:41:49
  • Python+tkinter实现制作文章搜索软件

    2021-02-01 15:11:05
  • python 实现UTC时间加减的方法

    2023-08-06 15:35:42
  • 浅析网页Transitional和Strict的文档声明的区别

    2009-02-17 12:45:00
  • python实现XML解析的方法解析

    2021-08-20 01:58:58
  • ASP.NET MVC4入门教程(四):添加一个模型

    2024-05-09 09:02:58
  • Python 运行 shell 获取输出结果的实例

    2023-08-02 16:51:18
  • python使用多线程查询数据库的实现示例

    2024-01-21 18:34:59
  • asp之家 网络编程 m.aspxhome.com