戴着镣铐起舞——从logo设计说起

一天中午走在路上,顺道去看了学校新媒体艺术与设计系的学生优秀作品展。看到一个logo设计时引发了我很大的兴趣,觉得设计的非常清新活泼,不过并没有拍下来,在这里不能贴图。但是logo设计大家应该都有所概念,也没必要解释。

出来的路上我在想为什么这个logo设计可以如此吸引我,让我觉得设计得很赞。我想,所谓的logo设计就是利用尽量少的元素组合出尽量多的内涵。当我们惊叹于一个logo是如此简约,但是却能给我们视觉或者思维上深刻的印象冲击时,这种少与多的对比就体现出来了。

这里,我倒是还能拿我自己给自己设计的姓名logo做个小例子,也希望感兴趣者不吝赐教。(画工拙劣,请无视)


姓名logo——钱宇祥

这就是我的个人logo,有时候写信就是画个这个表示落款,含义大致如下:

首先,从我的名字着手,“钱”这个字通过那个人民币符号(¥)表现出来,另外整个图片的那个大半圆包着¥,代表的是一个聚宝盆的样子。“宇”字就是这整个图片大致上有一个宇字的轮廓,星星是那一点,然后是宝盖头,下面是一个类似“于”字的东西。“祥”字通过选取半边——即“羊”字,和人民币符号相融合,同时,利用宝盖头上的那颗星星符号预示着个人的美好愿景——做一个宇宙中吉祥的人成为一颗闪亮的星。

同时,因为我是91年出生,属相是羊,在构造¥时,将两个角进行了改动,表现出羊的特征。

于是,我们可以看出来,logo设计就是如何用尽量少的元素进行复用组合,却能涵盖表达出尽量多的含义。而且,解说的过程或许会有点枯燥零散,但是,当你直观地去看这个logo时,同时体会它所传达出的丰富的含义,又会觉得很有意思。人脑就是这么神奇。

但是,这种以少见多并不只是设计中会体现,我在《编程之美》上看到的一道题,其中一个解法让我感受到01字符是如何创造出无限的可能的。

题目在书的第13页——1.2中国象棋将帅问题:大意就是只用一个变量,要你计算出,当棋盘上只有将和帅两个棋子时,哪些位置这两个棋子可以共存(注:中国象棋中将帅在同一条纵向直线上不能共存)

关于这道题,我开始想到的是利用位运算的方式来处理,虽然如果真的要我写具体代码我觉得还是很困难的。我只是觉得只用一个变量解决这个问题,那么这个变量必须能够承载较多的信息才能解决问题,那么充分利用一个字节中每个比特位的话,这似乎还是可行的,每四个比特位代表一个棋子,01组合就可以把将帅的位置都充分表示出来了。

然后,就是那个让我觉得很牛逼的解法了,他是这样解决的:

BYTE i = 81;

while(i--){

    if(i/9%3 == i%9%3)continue;

    printf("A = %d, B = %d\n", i/9+1, i%9+1); 

}

这个答案,可以看出只用了一个变量i,其初始值是81。然后通过除运算和取模运算的组合就得出了结果。我分析这个解法时感觉这个解法应该是来自于笛卡尔集。其实,这就在一个集合中取一个合理的子集的问题。全集U是:{(0,0),(0,1),。。。,(8,8)}两个分量分别代表了两个棋子在各自的那九个格子中的位置,于是,这个集合可以根据第一个分量分成9组,然后,每一组中再找出合适的元素,显然,这个集合中元素个数的总数是9*9=81个。

i/9是表示了分组,因为0~8除以9都是0,代表了第一个元素为0的那个组,后面的%3是因为我们考虑的是纵向直线,这三条纵向直线上的数字也是有关系的,还是加个图表示下直观吧:


将(帅)能够呆的9个位置 


于是,等号左边代表分组,等号右边代表了组内另一个棋子的位置,然后通过对3取模运算,就可以知道是不是在一个纵向直线上了。我为这个解题的思路所吸引在于它的跨学科思考,这算是我们所学的集合的一种运用吧,当时更让我坚定了程序员学好数学是一件多么棒的事,也许它不能给你实际的编程技能上的帮助,但是你看问题的角度和思路是别人所不能企及的,还有就是如何对一个简简单的数字——81,去思考这个数字所能传达的更多的内涵来。

这里我还想多插一句,虽然我知道我已经说了太多的题外话了,其实这道题,如果不对变量数目进行限制的话,我想最直观的解题思路就是两个for循环,遍历所有的可能吧,其实,这个i=81的解法看上去就是这个最原始基本的解法经过更加深入的思考之后所得出的解法。这让我想起过去看动画片《中华小当家》时,里面有一句箴言是这样说的:当你不知道从何入手时,就回到原点。这道题目,她的思考原点就是用两个for循环遍历,我想理解这道题背后解题的思维方式和过程远比惊叹于“这样也行!”要更加有价值吧。而且,书中最后那道题的解法是让我觉得投机取巧的,将一个byte拆成两个,还说自己只用了一个变量,这实在有点。。。。。。但是,我必须要承认这种解法对于数据结构的认识比我要深刻太多了。

对不起,我知道我已经说了太多的题外话,而这道题在我眼里就和之前说的logo设计一样。把那句话——尽量少的元素组合出尽量多的内涵——放到这里,添加一点编程的特点得到的改装版就是——用尽可能少的输入获取尽可能多的输出。而这种少与多背后的支撑点就在于你思考的多少与深浅。

所以,我觉得我们可以很好理解在那个内存寸土寸金的年代为什么有那么多将编程上升到了一种技艺甚至一种艺术的编程大神产生。他们受制于有限的内存,却希望创造无限的可能,这时,思维的火花所迸发出的光芒实在是太绚烂了。如今,对我们来说,我们写程序除了在特定的情况下,完全不需要关心内存问题,我们被提供了无限的空间——我们被卸下了镣铐,但是我们的舞姿变得并没有那么美丽甚至炫目了。当然,我明白,现在我们更多的精力转移到了业务与需求上了,我们势必需要在编程技艺上做出一定牺牲,况且不重复造车轮指导着我们能复用的就不要自己做。所以请别对我有偏激言论说现在依然是有编程的神人存在的云云。我的重点我认为你是懂的。

于是,我还想把这个带着镣铐起舞的概念再延伸一下,我记得以前看莎士比亚十四行诗时,对于莎翁有一个评论是古典十四行诗极其严格的韵律限制使得他为日后驾驭语言提供了很好的训练。我们又可以发现,因为韵律限制,我们又想在这种限制中寻找一种表达的自由时,给我们带来的那种收获。

我想,带着镣铐起舞所带来的是创意与灵感,而不是桎梏与僵化。当然,这里我们必须能够充分发挥作为人的主动性,企图在带着镣铐的情况下跳出绚丽的舞姿,才会真的有效果。

既然我已经跑火车跑了这么远了,我不妨以人生这个巨大的伪命题来结束我的火车之旅。我们都听说过这样一个比喻,人生就是一幅画卷,我们生下来的目的就是在这幅画卷上画出自己的人生来。那么我想说,我们确实没有必要去抱怨我们的人生有太多的限制有太多的不容易,我们手中的画笔和颜料都有限这样的话也没什么意义了。因为,我们发现,如果人生真的提供了一切的原材料,将你身上所有的镣铐卸下,这种无所约束的人生带来的恐怕只会是你对人生无比的迷茫与无所适从。

有限的生命才能带来无限的精彩。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 12,723评论 0 33
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,463评论 25 707
  • 前几天武志红有堂微课《拥抱巨婴,走向丰盛》。 没有接触心理学以前我不知道什么是巨婴,更不知道一个人的心理年龄和实...
    木小槿阅读 430评论 0 0
  • 在生活有没有这么一幕的场景? 跟男朋友约好了,6点一起看个电影,出门前10分钟才想起来自己还穿着休闲装,得赶紧换上...
    果粒橙is阅读 377评论 0 0
  • 你觉得有信用卡的人对这个产品是不是很有需求?巨大的需求蕴藏着巨大的商机! 无需设备,APP=POS机 免费注册使用...
    我问一下膜阅读 162评论 0 0