从美术大家借鉴软件开发

从美术大家借鉴软件开发

0x00 摘要

最近学习了胡佩衡先生的《我怎样画山水画》,感到收益颇多,其中很多经验智慧可以和软件开发互相借鉴,所以整理出来,与大家共享。

因为各个行业中,其背后的底层逻辑,或者说世界观方法论非常类似,可以彼此借鉴。也就是佛门中的万法归一。之前就有人把软件开发与建筑设计作对比,也有众多软件大师推崇《万里任禅游》这样讨论生命真相、生存本质的书。

其实软件开发的顶尖高手就相当于艺术家,所以艺术行业的经验我们完全也可以借鉴过来。

0x01 胡佩衡先生

1.1 简介

胡佩衡(1892.6—1962.3),谱名锡铨,又名衡,字佩衡,号冷庵,外号胡涂克图,以字行,蒙古族,原籍河北省涿县,因祖辈做粮商,迁居北京。先后在北平师范、私立华北大学、北平师范大学、北平艺专任教职,主办过“中国山水画函授学社”,又在北京琉璃厂创办豹文斋书画店。历任中国画学研究会和湖社画会评议,华北大学教授,北京师范大学讲师,北平艺术专科学校教授。新中国成立后,先后任北京中国画研究会常务理事、北京画院画师兼院务委员。

秦仲文在谈到1962年8月在北京举办的“胡佩衡遗作展览会”时,用两句话概括胡佩衡前期作品:

  • 一是“精细可爱”;
  • 二曰“不断致力于继承古人和吸收先进笔精墨妙的技法”;

前一句是讲画法风格,后一句是指出它们与传统的密切关联。能粗能细,而无论粗细,都流溢着纵逸奔放的气质。

1.2 教育方法

胡先生艺术成就非常高,但是其教育能力同样非凡。这点是最令人受益的。

钱葆昂《胡佩衡课徒画稿序》曰:

“先生之为人也如春风,冬日即之也温。其教人也懃懃不倦,探骊得珠。

其言尤能深入浅出,古人千百言所不能说明者,先生不十余言,即能使深奥之精义昭然若揭

前人立言,惟恐其不玄,先生则一以科学之方法治之,所以受教育者莫不事半功倍。”

0x02 智慧借鉴

2.1 临摹和阅读源码

从某一角度说,在某一个领域能成为大师,一定是深入了解了该领域有史以来的问题、解决方案以及最终效果,最终能够基于整个领域的历史去开展工作,其工作的参照系统是人类在该领域完整的技术经验和思考沉淀;

学习绘画中,非常重要一点就是临摹。而软件开发中,与其类似的就是源码阅读。

所以临摹的理念和经验就可以完全应用到软件开发中。我们来看看胡先生的经验智慧。

2.1.1 临摹目的

临摹的目的是向古人学习,接受笔墨和遗产。

古人作品不是十全十美,要分析批判的吸收和接受,临摹不等于复制。要经过细心选择,汲取有益的成分。要批判其错误和缺点。

我们在阅读学习源码时,也应该持类似的目的,要有辨识的研究源码。

掌握了基本技巧,看过临过很多名画,一看就知道笔墨优劣,知道绘画理论,至此才应该多写生。

现在开源软件大量使用,用起来确实舒服,但是万事万物都是有代价的。用到开源软件的困境就是:一旦遇到问题,你只能自己解决。当然可以上网求助,但并不是所有问题都能在网上找到答案。

所以程序员需要具备这个能力:迅速上手不熟悉的代码,当你使用一个开源项目时如果在解决Bug/性能问题/稳定性问题时,可以立刻下载其源码,快速理解/分析其原理,并且可以动手修改实施。

这能力来源之一就是大量阅读源码,并且深入其背后机理。

2.1.2 临摹原则

不必希望乱真,要看技法和精神

汲取经验和技法,把技法掌握在自己手中。为了写生和创作打基础。

一次临摹步满意,就继续临摹,越不相似的地方,研究不像的原因。

我们也可以借鉴此原则。

阅读源码的问题是:你即使知道每一行代码的意思,但是也不明白作者为什么要这样实现。

阅读代码的精髓是:你依据代码可以了解作者在实际开发领域中面临的问题,并且可以在纷繁复杂的逻辑中查找出作者解决此问题的关键。

所以,要汲取经验和技法,而且要 “研究不像的原因“,总结变化中那些不变的永恒的东西。

2.1.3 临摹前分析

先对临摹的画进行分析和研究,其主题是什么,通过什么内容表现出来的,其构图怎样,笔墨,着色的优点是什么,应该汲取的是什么,应该废弃的是什么。

这样才能知道什么是优秀遗产,什么是糟粕,这种分析是通过仔细观察得来的。

也需要研究内容分类:点缀物品,树木,山石。这样问题就清楚了。

这样才能开始临摹。

我们在阅读源码之前,也应该理清楚该源码的主题,表现方式,目录结构,优点,缺点等等。

2.1.4 临摹技巧

掌握了临摹的技巧之后,又看了不少古人的画幅。这样就可以临摹全幅。

看绢,纸;

看笔,狼毫,羊毫...;

看各部分用墨浓淡变化;

碳条勾稿,糟粕部分不要或者修改

原画的笔画人物山石等

画淡墨,山石阴暗,树木干部等等

画着色

胡先生把临摹过程分得非常细致,也把一幅画的结构分离出来。我们在阅读源码时,也要采取类似办法。

2.2 写生与开发

美术中的写生其实和我们实际开发就非常类似。或者可以认为美术的写生就是软件领域内自己动手练习 & 开发的结合

2.2.1 写生的必要

之前人很多不对路。只是搬运,以为是创作。

应该体验生活,总结素材,再艺术加工进行创作。

广师临摹,不谈写生,是钻入牛角尖。

2.2.2 古人与写生

宋人之前没有很多稿本可以临摹,宋人大多写生为主。汲取自然,用熟练的技法来大胆发挥剪裁,每人章法作风不同,因为宋画绚烂。

范宽 :与其师人,不如师造化。纵览山川。

元以后,临摹居多。明之后更差。清朝更注重临法。笔墨深,但是章法千篇一律。

了解美术的朋友就知道,明清之后的衰落与只临摹少写生有直接原因。

2.2.3 写生原则

多游名山大川。多次练习。

但是随地可以写生,家附近有山有树即可。

参证古人画作,比如王维的:石看三面,路看两头等等,古人如何取景构图,和我今天写生有啥异同,有什么汲取的,有什么需要继续研究的。

处处留意,寻找素材,遇到一个树,从各面去画,才有收获。

处处有素材,就看自己会不会拣去取。

这就是我们平时工作中,总是抱怨业务太多,不容易磨练技术。

但是人家大师也说了,处处有素材,就看自己会不会拣去取。没有机会开发阿里大促,你也可以在自己业务中玩出花来,就看你是否有心。

2.2.4 写生技巧

收集素材,分目:树木,山石,人物

每张稿子,记明季节,地点,时间,其他特点,比如夕照晚霞等,最好能即时着色,因为文字不明确。

这样眼和手熟练,有创作的基础。

对应到软件开发,就是自己的作品要整理归类,也可以把写文章作为一种整理方式

2.2.5 写生问题

自然景物和古人技法不能结合

自然景物太繁琐,一幅画不能容纳

琐碎不画,要有自由取材的能力,有特点才画。

随机变化,比如从中间挪到旁边。

2.3 临摹 vs 写生

只谈写生,不讲古人技法,则缺少中国画风格。临摹多了就掌握了古人技法和风格。

只谈技法,就陈陈相因,是变相临摹

不敢放胆就是因为临摹古人太少,古人怎么处理必须现有深刻体会,自己才能创作,才能推陈出新。

掌握基本技法----> 临摹名画 ------ 写生 ------ 临摹 ----- 写生

完全掌握了技法 ---- 研究名画,体会用笔用墨精神 ---- 写生

交互为用

研究过几年之后,才能批评一种学问。

虽然技法非常好,但是知其当然,不知其所以然,就离不开古画的圈子,就谈不到创作和构图。

对应到软件行业,就是开发和阅读源码学习要紧密结合,螺旋式上升

临摹的目的是为了升华,而不是单纯模拟。

吴昌硕说过:“学我,不能全像我。化我者生,破我者进,似我者死”。

齐白石也说过这样的话:“学我者生,似我者亡”。

临摹和阅读阅读代码都要提取其精髓,如果阅读一份源码不能让你思想发生变化,不读也罢。

0xFF 参考

胡佩衡《我怎样画山水画》

posted @ 2021-01-01 11:19  罗西的思考  阅读(230)  评论(0编辑  收藏  举报