简单 v.s. 基础
无论做平面设计还是做摄影创作,其基础都是一些比较粗浅的看似毫无用处的简单技能。例如画直线、拍挂在墙上的电视机,不一而足。
同样的现象还能在web的前端设计中看到。一堆类似小孩学绘画的标签,几个可以更改属性的css文件,完毕。
但神奇的是,就靠着这些简单而粗浅的概念,竟然可以做出让人惊叹的作品来。先不谈各种酷炫的网页界面就是由傻气的标签构成,就算是简单得像Windows系统自带的画板程序,也能够在绘画大师的使用下,创造出让人惊艳的绘画作品。至于摄影,很多优秀到让人赞不绝口的作品,也仅仅是依靠手机相机,而不是贵到让人傻眼的数码单反。
如果再配上PS后期,其作品的惊艳程度还能再上升一个等级。但同样让人惊奇的是,即便是PS老手,其使用的大部分功能,也就限于几个基本操作:图层上的转换组合、颜色基本属性的调整、以及简单的裁剪拼接。
那么,有了以上的观察后,我们是不是要得出诸如:基础很重要、简单的东西自有其韵味的陈词滥调呢?
不是,也是。
无疑,以上所举出的这些简单的东西“非常重要”。因为,无数的实践都在证明,掌握了它们之后,就像是嗖地跨过了一扇门,往后的技能便能飞速成长。但我想说的是,这个“重要性”并不是源自于它的“简单”或者“基本”,而是因为它们恰好是各自领域里,类似房屋的脊梁、建筑的基石一般的存在。
在数学的世界里,任何一个分支的基石,一定是其基本的定义和公理。再辅之以逻辑推理,便能够将一个数学分支给建立起来。仅仅学习过数学但却未做过数学研究的人,一般不会有意识地去关注这些基本的定义和公理,到底是如何被提出来的。通常只会一股脑地先接受定义和公理,然后就急匆匆地开始各种逻辑推理。
这样的想法,非常类似于我们学习绘画、设计、摄影和编写代码。我们基本上只会匆匆地快速开始学习如何画线、如何做出一个方块、又如何去构建一个图层或对象,却很少会花费时间去思考,为什么它们可以被当作这个领域的基础?
所谓基础,它一定要起到牵一发而动全身的杠杆作用。简单的事情千千万,为什么有些被当做是杂事、琐事,而有些却可以被当作是基石。其衡量标准不在于哪一个事情更为简单,而是哪一个更能起到杠杆作用。
例如,在PS中,“图层”的概念,无疑就比色彩的调试来得重要。因为色彩的调试,只是技艺的某个方面,它的影响范围是有限的。而图层的概念一旦被提出来,整个“设计”就带有了工程哲学的味道。
它很好地将每一个图形的复杂度控制在一个范围内,并且还能够让这些独立的个体单元做任意的组合(完全就是Unix的设计哲学啊)。通过它这样一个基础设施,既能创造出无限的组合,又能够精细地控制图形的复杂度,提高每一个个体单元的复用率,从而有可能让每一件作品、元素,彼此间产生复利的效果,能够让一种影响力建立在另一种影响力的基础上,成倍地放大。
同理可以考察前端技术的设计。例如CSS,在我看来,其最重要的技术,不在于它能够修改某个字体的大小、颜色,也不在于它能够为某个区域增加背景图片,而是它拥有“选择器(selector)”这样一个强大的工具。如同“图层”这个概念之于PS,有了selector,CSS去控制元素的方式便具备了构建大工程的属性。每一个选择器能够直观简介地控制一个区域的界面样式,但它们又能够通过child-parent、sibling等关系进行组合,从而让你可以大规模地去控制网页元素的样式效果。
又如手机的进化。在iPhone出现之前,一部更为“先进”的手机卖点,在于其是否比普通的手机多了某个功能。例如,Nokia的最新款可以录音,而之前的版本不行。或是Blackberry可以提供PDA记事本、拍照功能,而别的手机不行。
但自从iPhone提出了手机App生态这样的概念后,就一劳永逸地解决了所有功能性多寡的问题。其point不在于它提供了哪一种优秀的具体功能,而是提供了“提供功能”的功能!有了这样的概念后,整个手机开发的视野和创造前景一下子就被打开了。从此,在手机内,便拥有了“无限”的可能性。
那么,再回到文章最开始的那些案例。为什么那些诸如画直线、写标签可以作为各自领域的基础呢?其根源在于:它们都具备“提供各自领域的杠杆性功能”这一属性。或者反过来说,一个概念或者技能,要能够成为某个领域的基础,它就必须具备杠杆性的属性。只不过,之前提到的这些稀疏平常的概念,是在长期大量实践的筛选下,沉淀下来的东西。也即是通过“自然选择”的方式,挑选出的具备杠杆性的工具集。
如果要做数学研究或者工程设计,当然不能被动地等待自然选择。而是要主动出击,费心思考“应该如何提出一个概念、提出哪些概念”才能提高挈领地抓住所在领域的本质。
所以,不是说看到一个东西貌似简单就值得去学习。必须要有能力分辨:哪些简单的东西是具备杠杆属性和复利属性,能让你的学习可以系统地层层叠加,将每一次的投入作为下一次行动的基石,来做指数级的成长。
近期回顾
《网络概念与快递物流 | 墙与梯子》
《精湛技艺的祭品》
《向南的高速公路》
如果你喜欢我的文章或分享,请长按下面的二维码关注我的微信公众号,谢谢!
更多信息交流和观点分享,可加入知识星球:
VIP赞赏专区
最新文章
- 批处理bat 命令
- Android DownloadProvider学习
- C++ 类的静态成员及静态成员函数
- php 配置正确的时间
- 华为OJ平台——尼科彻斯定理
- AS问题解决系列3—iCCP: Not recognizing known sRGB profile
- mysql批量更新、多表更新、多表删除
- css:hover选择器
- KVC在定义Model类中的妙用
- gdb篇
- QQ邮箱中转站文件即将过期时如何转存到微云
- HDU 1254 推箱子游戏(搞了一下午。。。)
- MongoDB基础之七 用户管理
- Spring 4 支持的 Java 8 特性
- NOIP初赛 之 逻辑运算
- Hystrix针对不可用服务的保护机制以及引入缓存
- linux上安装Docker
- jq 日期区间处理
- Spark SQL 函数全集
- 信噪比——信号加噪相关的知识
热门文章
- Linux驱动之内核自带的S3C2440的LCD驱动分析
- js实现一个简单的登录页面
- HTML5新规范和CSS3新特性
- hashmap源码研究
- 201621123002《Java程序设计》第十一周学习总结
- python基础之Day23
- 服务器上部署Struts2的web项目报struts-default.xml:131:154的解决方法
- java中的 java.util.concurrent.locks.ReentrantLock类的使用方式
- mysql5.7高版本加载低版本sql文件,时间不能为0000-00-00格式错误
- JB的IDE可视化MongoDB、MySQL数据库信息