先讲个故事吧.

武术

  • 我四岁半就开始接触武术了, 我们这边教的是南拳系. 刚开始, 教练就让我一门心思蹲马步、拉筋、踢腿、打套路、然后蹲马步...无限循环... 因为那段记忆实在太艰苦, 所以我印象深刻. 嗯, 我就这样蹲了两年.

跆拳道

  • 后来小学三四年纪, 我跑去练截拳道, 截拳道有一个重要道具: 胶把, 玩这个东西的规矩特别简单, 如果力气、方向拿捏对了, 就可以把胶把踢的特别响的. 如果没踢响, 就是不对. 于是我用了三年, 变着法子踢胶把, 弹腿, 旋风腿, 把招式练了个遍, 就是练怎么把这玩意踢响.
    • 跆拳道的套路比武术简单的多, 所以 武术给我留下来的套路基础, 正确的基础动作, 让我毫不费力的学会了跆拳道的套路. 但有一次上了实战台, 对面的姐姐用了一个下劈腿, 劈到我肩膀上, 我当场就给劈倒了. 嗯, 不到 3 秒钟.

截拳道

  • 然后我去学截拳道, 我师父的师父是石天龙. 我的师父是李志望. 我以为我要开始学实战了, 每天就追着我师父问我怎么能学实战? 我师父说,

    • 你看哪个学散打的, 在那边踢小步呢;
    • 我, 一套拳打了七年了;
    • 你看那个学太极的, 他每天就绕着他那个小圈走, 走了十年了.

      • 所以我什么时候能学实战呢? 我师父说, 先练好 素质, 把 套路 打好吧.
      • 素质说起来简单, 就是疯狂的跑圈, 跑圈, 拉筋, 拉筋, 体能, 体能.
      • 那套路呢? 我为什么要学套路?
        • 我那个时候, 基本你一个套路给我打几遍, 我就能打出来了. 所以没觉得有什么好学的.
        • 然后我师父给我打了一套拳, 我练了几遍, 打给他看. 他说, 除了腿法差不多, 别的全都错了.
        • 腿法是跆拳道给我留下来的底子. 后来我师父给我一个个拆分, 每个拳应该怎么出力, 打到哪合适? 胳膊和肩膀应该怎么配合, 为什么要这样打. 就这样打了一年. 勉强算是合格了.
        • 在这个期间, 我也学了很多身法, 在武术的稳, 跆拳道的飘, 和截拳道的稳、飘之间找到里平衡.

实战

然后我可以上实战了. 而我的教练甚至没 教过我实战.

  • 但这个时候神奇的事情发生了, 因为经过了扎实的身法锻炼, 对方可能怎么移动, 会移动到哪里, 我可以快速的判断出来.
  • 因为经过了扎实的 套路训练, 对方的某个动作, 在他尚未做出来的时候, 我就可以推断出他要干什么了.
  • 因为经过里扎实的 素质训练, 我在野路子实战中可以接受车轮战. 因为我的体力没有任何问题.

头几场实战, 说实话, 我是赢得有些费力的. 因为实战和套路、身法、素质似乎不是一路的东西. 但实战的那一瞬间, 你以前学过的好的腿法、坏的腿法, 全都跑了出来. 大脑为你计算出了最优的 身法, 出拳, 抬腿.

几场实战下来, 随着我的整合越来越熟练. 同期的学员里, 没有一个可以在实战中赢我. 无论你想怎么打. 有规矩的打法还是没规矩的打法, 包括男生. 嗯, 包括比我大上几岁的男生.

就算教练再怎么帮助他们事后 拆分动作 ,教他们该如何如何打. 也帮不了他们. 因为打法不是死的, 当我把A, B, C, D……Z 全都学的滚瓜烂熟, 我随手就可以把他们组装到一起. 而你见到对方出 A + B, 你就拆 A + B, 我下次用 A + C, 你就傻眼了. 这就是 的最本质区别.

所以在这个过程中我都学了什么呢?

  • 武术教了我基本概念, 基础动作.
  • 跆拳道教了我腿法.
  • 截拳道叫了我道. 它告诉里我为什么.
    • 问: 如果你在学基础概念的时候, 就有人告诉你这个动作是为什么, 不是更好?
    • 答: 不可能更好. 当你 基础动作 都打不明白的时候, 你连 正确姿势 是什么都感受不到. 怎么可能感受得到中间的道呢?
      • 举例, 学 鲤鱼打挺 . 正确的动作应该是原地打挺, 也就是你躺在地上, 你 臀部或腰部 的位置, 应该作为你落脚的支点.

        很多人说, 我也能做鲤鱼打挺, 不过落脚的位置在腰\臀部下边一点. 我跟你说这样不对, 不行. 你会想, 为什么不行呢? 同样都能站起来啊. 但当你真的练到标准的鲤鱼打挺时, 你就发现, 哦, 原来支点放在腰部, 会比支点放在腰\臀部下边一点 省力气, 而且起身速度快.

        这个时候教练告诉你: 要这么做是因为, 你在站起来的那瞬间, 会更稳 . 可以更稳的对抗新来的攻击. 而且 不会因为惯性, 要往前走两步. 这样你做的是原地挺身, 如果你鲤鱼打挺的地方前面正好有棵树, 有个悬崖, 或者正好有个拿刀的人, 这就是你 活命的根据.

教练如果提前告诉我这些心得, 想必我是体悟不到的. 因为我基础动作还没做好. 就算知道了这些, 也是没用的. 我需要知道的就是, 我要把脚落在腰\臀的位置,  为什么我不知道. 练好了再说.  

所以在知道为什么之前, 我已经把所有的基础动作学的差不多了.


编程中的道理

所以编程呢?

  • 编程的基础功是什么?
    • 是语法?
    • 是思路?
    • 是格式?
  • 如果基础功有了问题, 我们应该如何提问?
    • 基础功的习得标准是什么?(对应 把胶把踢响.
    • 如果标准无法达到, 你的猜想是什么?(我猜想踢不响胶把是因为用 脚尖 去踢了胶把.)
    • 尝试过猜想, 我依然达不到标准哎. 怎么办?
      • 告诉教练, 我的 问题是: 弹腿时踢不响胶把.
      • 我的猜想是因为我用脚尖踢了胶把, 试过用脚面踢, 仍旧踢不响(反馈).
      • 您可以帮我解答这个问题吗?

        教练就会告诉你: 你要想踢响胶把, 要把力量集中, 短且快. 而且要用脚面踢. 你已经用脚面去踢了, 那踢不响胶把的原因就是不够快, 力量不够集中. 所以你应该做的 关键动作是: 提膝 90 度, 再快速把小腿踢出去. 这样就可以做到力量的集中.

你试了几次, 真的踢响了. 这个时候你的脑海里会清晰的记住两个 踢响胶把 重点: 提膝 90 度 + 用脚面踢.


再来谈谈创造

编程从某种角度来说, 是 高度实战 的. 这就是为什么每周, 大家都会收到一个 唯一任务 的原因.

如果, 语法函数句式都是 , 那么真正的上手编程就是道. 什么是道呢? 你玩转了所有的术后, 术就变成了道.

而有学员问:

 创造就要多好的基础吗?

  用画画比喻一下。是只有学上几年的速写,素描,色彩,才称得上有“绘画基础”,才能画出好作品?(推荐看看漫画家tango的作品)

  对于有创造力的画家,给他一只铅笔就足够了,无需多么复杂的工具。

  学编程也一样。有的人可能连函数,连类是什么都没搞懂。但它就有动力去尝试,用几百行甚至十几行代码就能写出一个有意思的图形作品,无需多么高深的编程技巧。
  1. 有人阻止大家去这么做了吗? 告诉我是谁! 我去说说他! Learning by doing! 这是极好的学习方法啊!
  2. 说到画画, 就拿印象派的 莫奈 来说, 他的印象派画风, 看上去十分像 瞎涂乱抹, 但他是系统、正经的学过画画的. 他就是既不喜欢 古典派 也不喜欢 学院派, 所以自己画出了一个派. 小打小闹的创作, 知识开始. 想要长远的发展, 一定要在 术上建立起自己的道啊 !
  3. 如果人连函数、类都没搞懂. 那么他写出的是一个没有类、没有函数的图形作品. 这也很好啊. 所以, 他就打算一直写没有类、 没有函数的作品了吗?

再来谈谈 "游戏规则"

  1. 本课最大的规则就是 反转.
  2. 没有最好的学生. 只有最好的老师.
  3. 记分、OMOOC小报、自测表(仔细想一下为什么叫自测表), 都是为了得到反馈.
    • 如果没有反馈, 你学完了python, 你凭什么证明你学会了?
    • 产出在哪里?