【编程体会】你与高手间差了点“套路”

套路这个词总是让人觉得是一个贬义词,然而平心而论套路是快速成为编程高手的重要条件。

从网上摘取了套路的定义

“套路”是指精心策划的应对某种情况的方式方法

当然了,如果这个精心策划是图谋不轨的,那当然就是贬义词。然而我们只是单纯看字面意思,把套路理解为针对某件事的处理方法,我们也不得不承认,不管是好的还是坏的高手,必然在特定的领域训练出了一套行之有效的方式方法。既然如此,我们就有必要去学习那些好的套路了。

今天我就从三个层次来分析套路的重要性。

套路是解决问题的加速器

其实在日常生活中我们一直在使用套路。

举一个生活中的例子,文档模板。相信大家长这么大或多或少都去过派出所,社保机构,档案局,出入境管理局或者其他政府机构办理过一些手续。而办理手续过程中经常会要求填写各种文件或者表格。你有没有想过,这些文件和表格其实都是一种形式的“套路”。

没有这些模板,你根本不清楚都要填写什么,哪些是需要的,哪些是不需要的,如何提供对方需要的信息。这样你们每次都使用语言通过一次次互动和确认来达到文档模板的功能。要是这么做是不是办事效率会低下很多?

如果你觉得这个例子有点不那么正规,那我给一个正规的例子—操作手册。

这个平时大家见不着,但是在电影里时常会看到—飞机操作手册。每次飞机起飞前机长都要按照手册对飞机的各种指标做好检查。这个手册不就是套路么?如果没有这个手册,每次机长只能凭借记忆去检查飞机状况。当然了,你说机长不就是干这个的么,肯定滚瓜烂熟了啊。但是毕竟机长是人不是神。如果机长头天晚上和家里人闹别扭,或者大脑就那么一下下的短路导致漏查了一项岂不是要酿成大祸?谁能保证每次都记得清清楚楚?

如果我们定义高手是更快速解决问题,那有这些“套路”是不是就可以说是高手了呢?

说到这里我突然想到了笑来曾经制作过的装机手册。虽然我不确定这本手册中都写了些什么内容,但是可以肯定的是那些之后出来单干的伙伴还是非常想继续获得更新版的装机手册。原因很简单,在手册中记录了最新的装机套路来帮助自己解决可能遇到的问题,或者是更好的处理已有的问题,从而让自己变成更加厉害的人。

这不就是套路帮助自己快速解决问题的实际例子么?

套路是不断提升的奠基石

我知道,上面这么说的一大推,你可能还是不满意。觉得就是忽悠。不就是写写模板,写写操作手册么。这就是高手了?

首先加速当前问题的处理,这件事本身就是非常有意义的。有人做得快,做得好,这本身就是价值。否则为什么要提倡电脑办公呢?干脆还是像以前一样用纸质的公文好了。使用了电脑之后,只要鼠标一点工作流程就到了下一个环节了,你的屁股都不需要离开座位。我想这些流程对需要办理各种手续的朋友是有亲身体会的,而对我们普通人来讲体会比较多的可能是排队进地铁,排队去银行之类的了。每次排队的时候,你是不是觉得很痛苦?是不是希望有什么方法能够瞬间让自己进站,或者是取钱走人?所以提高效率对个人和社会都是一件非常有意义的事,而好的套路是能够有效提升效率的。(其实办理企业也是如此,这里就不扩展了。)

其次我们用发展的眼光看待提升效率这件事情。我们来比较两渔夫吧,一个效率很差,一天忙死忙活只能抓到两条鱼,刚够自己吃饱。而另一个人效率奇高,半天就抓到两条鱼了。

注意下面我要说的:

  • 第一个人为了维持生计只能全天打渔,没有多余的时间来提高自己。
  • 而第二个人则可以选择在空闲时间发展点其他的爱好或者生存技能。

有没有想到自己整天忙死忙活,但是依然还是那个小喽啰。而那些大牛好像没做什么,但是发展特别好?当然了,人大牛也是天天很卖力的哈。只是差距可能就在于你每天非常卖力但是效率却不高,一直处在低效重复劳动。而大牛们则善于总结套路,提升自己的效率,让自己有更多时间去提升自己。自然日积月累产生了差距。

从这个层次看,要想成为高手就是要不断构建自己套路,并不断提升套路的层次。当你能够总结出提升效率的套路,就是把自己从这个层次中解放出来,从而有机会看到更高层次。

套路是思维升级的显化物

套路不是流程的随意堆砌,而是对思维过程的一次完整的梳理。

不要看不起套路,其实总结套路没有你想的这么简单。我们先放下对套路的成见,来看看大家周围有多少人会去总结套路呢?是不是很少。

总体而言,大部分人是没有套路的,更不会去总结套路。有些人,哪怕是达到了专家,大拿的水平,也不一定会总结套路。只是他们重复执行的次数达到了一定的水平,而形成了大脑沟回。我们暂且把这一类也认为是套路的话,那么我个人认为套路是对某一领域思维足够成熟后的显化。虽然有些人没有形式化总结套路,但是在潜移默化中处理问题时运用了自己实践过程中形成的方法。

这里用一下华罗庚大师的例子。大师曾经写过一文《统筹方法》,其中有一个关于泡茶的例子。原文如下:

比如,想泡壶茶喝。当时的情况是:开水没有。开水壶要洗,茶壶茶杯要洗;火已升了,茶叶也有了。怎么办?办法甲:洗好开水壶,灌上凉水,放在火上;在等待水开的时候,洗茶壶、洗茶杯、拿茶叶;等水开了,泡茶喝。办法乙:先做好一些准备工作,洗开水壶,洗壶杯,拿茶叶;一切就绪,灌水烧水;坐待水开了,泡茶喝。办法丙:洗净开水壶,灌上凉水,放在火上;坐待水开,开了之后急急忙忙找茶叶,洗壶杯,泡茶喝。哪一种办法省时间?谁都能一眼看出,第一种办法好,因为后二种办法都“窝了工”

这个例子实在太简单,大家几乎可以秒懂。如果大家细细体会一下,我们分析的过程中其实是对这三种方法比较的思维过程。我们在生活工作中处理问题时也会使用到这样的思维过程,但是我们自己并没有意识到。

一般会有两种可能:

  • 这个问题太简单了,类似这个泡茶,我们大脑直接替我们处理了
  • 这个问题太难,凑合着做吧,或者干脆放弃

很少有人会做到第三种情况:

  • 分析这件事情的流程,比较自己的方法是否合适,并作出改进

而最终的改进就是我说的套路。然而在这句陈述中不难看到,要得到最后的这个改进,之前要经过前两步重要的过程:对事情的分析,对方法的分析。

所以不要再瞧不起套路了,每一个好的套路都是思维整理和升级的产物,不是每个人都能做到的。

形成套路的方法论

唠叨了这么多,我想你已经明白了套路的重要性,下面我就来讲讲可以怎么做。当然,如果你不认同也可以继续往下看,哈哈~

在上面的这段描述中我们可以看到两种有套路的人:

  • 主动总结套路的
  • 被动总结套路的

而我相信绝大多数人都是第二种,在实践过程中被动的形成了一些方法,而自己也不是特别清楚。因为在我意识到这点以前,自己也是这样的。

比如最近我在教小白学习编程。作为一个编程能力还算可以的程序员,我只知道自己能力还行。但是为什么自己水平得以提高,为什么看到这段代码我能理解,而小白却不能理解,在我的课程中如何让没有计算机基础的小白能够掌握拥有大量术语,体系复杂的计算机编程,这是我一直在思考的问题。正是因为在这条路上我没有主动去总结过套路,所以当自己现在回过头去看的时候找不到任何迹象。这也是为什么很多人自己是高手,但是不一定能很好教别人成为高手。

所以总结成一句话:做高手就是成为主动总结套路的人

人不是天生就会总结套路的,而是通过不断的实践,甚至可能有时候需要逼迫自己去总结。就好比这篇文章,在下笔之前我虽然很明确知道我想要去分析套路的意义和对我们自身成长的好处,但是并不是明确知道要分成哪些方面去探讨。也正是在这书写的过程中,我不断得和自己对话,不断思考这个概念在哪些层次上有着不同的意义,最后才形成了这么一篇看似有这相对完整构造的三段式分析,有了笑来的装机手册,有了华罗庚的《统筹方法》。

而另外一个触发我思考和总结的原因是我刚才提到的教小白学习编程。正是在自己尝试教小白学习的过程中,我不断去思考一个没有基础的人要学习编程究竟需要哪些知识,哪些概念是最重要的,哪些是必须要教,而哪些是可以通过这些基础概念推演的,获得了哪些基础知识后就可以快速扩展到其他编程语言的。这些问题以前我都没有思考,而现在一直让我想到脑袋疼。不过正是因为这样的思考,让我逐渐在编程学习上总结出了一些些的套路。这也是我想要分享给大家的。

好了,刚才给大家指了一个大方向,现在给大家两个具体的方法:

  • 写作
  • 教学

我真的认为这两种方式是促使你思考,总结,提炼套路很棒的方式。除了今天被我的“套路”概念洗脑,这是我真心希望大家能够运用起来的好方法。

最后发现这两个方法其实早就知道了,不过这次亲身体会感受更深。也算是殊途同归,所见略同了。

来源公众号杨小伟的世界  如有侵权,请联系400-636-1878删除。


登录或注册后发布评论