日期:2013-06-05  浏览次数:20623 次

文章描述:简单的功用让用户专注于创造.

我是个大嘴巴的人,喜欢不断的通知别人我的感受和想法。

当我刚写完MiniCMS的产品引见后,发现吐槽的文字比产品引见还长很多,使得产品引见基本不像产品引见。但是有很多话又不吐不快,所以我把想吐槽的话和产品引见分开来,各自作为一个独立页面,防止部分潜在用户由于不耐烦我的吐槽而流失,呵呵。

MiniCMS的功用很简单,开发MiniCMS的目的也很简单。

我用WordPress用得腻烦了,我想要一个功用简单,并且容易备份和迁移的团体建站程序,所以我本人开发了一个,并且也为了练练PHP,由于我的PHP不断都是很专业。

但是开发MiniCMS的历程并不像它的功用那么简单。

几年前,我很侥幸的参与并主导开发一个代号为BlogMax的博客程序。那时的我对产品缺乏理解,单纯的以为有好的技术就可以出好的产品。我对产品的肤浅理解最后导致了这个项目以停止开发而告终。

随后的几年,我都在从事互联网相关的产品技术研发任务,虽然不直接参与产品策划任务,但是与各种产品打交道久了,慢慢的也开始懂得从技术以外的角度去“鉴别”产品。

慢慢的,我发觉好产品是有特性的,这种特性是没有领域区别的。

一份美食、一张好照片、一段好程序、一首好歌、一部好电影、一个好的互联网产品,它们之间都有共同的“味道”,那就是人文。

而乔布斯通过苹果的产品,更是一再的向世人证明,人文与技术相结合的力量是多么巨大。

于是我再次开始策划开发一个博客程序。

但是做着做着,我发现我基本就是在做另外一个WordPress。跟别人做同样的事情有什么意义呢?如果不跳出别人的思维方式,找到本人的真正方向,那开发这个产品基本没有意义。

这样的过程经历了2 - 3次,每当我有一些空闲时间的时候,我就会开始尝试,然后放弃,再尝试,再放弃。

为什么不懂任何美工的我,直接在服务器上的命令行界面用VI手写HTML和CSS,可以做出一套小清新的界面呢?

由于我曾经做过很多次尝试了,以致于我爱人看到我在做MiniCMS的时候就说:“你又在做这个啊。”。

做MiniCMS和上一次尝试大概隔了一年多。这一年多我都忙于开发公司的产品,忙结婚,忙产品上线,忙四处救火,这一年真的非常非常的忙,以致于忘记了很多事情,而有时候能忘记是最难得。

这次,当我再次做博客程序的时候,我曾经忘记我要做一个产品了。这次的动机变得很单纯,我想把本人的博客整得好用一些,让我可以为我平时做的一些项目创建独立页面,并且又可以写写日志和文章,这是发自内心的需求,我没有太多时间做太复杂的功用,我只想早点做完早点能用上。

但是,刚开始做MiniCMS我一样又遇到复制WordPress的问题。我设计完第一版的后台界面的时候,我发现完全是另一个WordPress嘛,让我纠结的是,好像每个功用都是必须的。

我把界面发给我弟看,把我的苦恼通知他,他说:“有时候做减法比做加法难。”

我想一想,的确是如此。做加法,只需简单的自创模仿别人的产品,而做减法,必须认清本人要做的是什么样的产品。

我提示本人,我一开始只是想做一个本人够用的程序,不是想做一个大而通用的程序。而这个程序顺便满足一些跟我一样的团体站长的需求,我们这些人需求的不是一个带三温暖和三百六十度海景的超奢华办公室,我们只是需求一个地方能让人静下来记录和整理想法。

于是我开始砍功用。

最先砍掉的是用户管理功用。由于我的网站只要我一团体在使用,这功用我从来没用过。

接着砍掉的是主题和插件。我想,如果需求什么特定的功用或界面,直接拿代码改就是了,而且作为一个小众的建站程序,不可能有很多人,甚至不可能有别人为它制造主题和插件,做这两个功用岂不是自作多情。

然后我又砍掉了分类功用。由于用WordPress期间,我经常纠结于如何分类和贴标签,分类的树状结构也让人煞费苦心。索性只留下最随意的标签功用,能按标签索引文章就行了,网站的层级结构就交给页面系统。

在砍掉功用的过程中我慢慢的找到感觉,最后我总结出一点:创造内容和展现内容是团体CMS的核心功用,凡是与核心功用无关的,或者分散用户使用核心功用的留意力的,都应该砍掉。

最后我还决定不开发评论功用,由于我本人没用到,而且也没什么人写评论。并且有Disqus这样的第三方评论系统可以提供评论功用,无需把评论内置到MiniCMS中,这样可以让MiniCMS更简约。

最后得到的MiniCMS后台很简单,只要三个标签页,分别是”文章“、”页面“、”设置“。

我用WordPress的时候有一点觉得特别不方便,就是备份网站。

网站的数据和文件是相关的,如果用数据库的话只能导出SQL文件,并不能同文件一同备份。而且还原数据库时还经常遭到各种限制或遇到编码问题。

于是,我把MiniCMS设计成只需求PHP就可以运转,不需求数据库的支持。

对程序来说,这是变复杂了,由于要本人用文件组织数据又要保证效率。但是对用户来说这是变简单了,易于安装,易于备份。

我希望用户把MiniCMS上传到服务器就可以开始使用,备份网站只需求备份整个网站的文件夹就行了。

当完成MiniCMS的总体功用当前,我做的第一件事就是把本人几年来的博客文章整理复制到新的程序中。

没有任何多余功用的MiniCMS用起来果然高效许多。

我回想使用WordPress的感受,再对比使用MiniCMS的感受。我发现,正是由于WordPress的目标是做一个极度通用的建站程序,使得用户在为了达到某个目的的适合没办法以最佳路径达到,而必须走折中路线。

再回想曾经参与开发的产品以及用过的各种产品,我总结出一点:追求产品的通用化,会使得每个需求都没办法以最佳的方式满足,由于你要在诸多的需求之间妥协和平衡,最后得到的只能是一个平庸的产品。

其实在程序方面我很早就发现同样的规律,好的程序员总是在最求代码更通用的过程中不断进步成长,但是追求到了痴迷形状就会产生过度设计的东西,不必要的程序通用性反而带来很多副作用,所以我经常说:“通用往往就是统统不好用”。

简单的功用让用户专注于创造,好产品应该像《道德经》里说的:“上善若水,水善,利万物而不争”

简单的功用让开发者专注于处理核心需求,简单的产品不是为了简单而简单,而是清楚的知道用户的核心需求,并专注于处理核心需求而简单。

保持简单,保持专注,这就是我在开发MiniCMS的过程中学到的。

作者:达达