我的2018年

随着年岁的增长,对时间的流逝越来越敏感,也越发觉得时间不够用。每当从生活的忙碌中赋得一点小闲,总是会不由自主地怀念曾经年少时,可以大把大把挥霍时间的那种惬意,那种随性……

2017年走得悄无声息,眼看2018年很快又要过去了。只好赶在跨年之前,逼自己码点文字,否则又会一拖再拖,然后没了结果。

教学

为了更好地分年级教学,今年初我把code.org上的课程从1-4系列切换到了划分更合理的A-F系列。两条课程线一下变成了四五条,随着编程课覆盖到初中,加上各班进度不同导致的教案不平齐,备课工作量顿时无比巨大,有时一天要上五堂完全不同的课……

幸运的是,团队及时补充到了新鲜血液,王梁老师的加入让我可以稍微缓一口气。然而自己设计的课程想要让别人能理解、乃至于可以操作,还需要大量的迭代。听课教研时看着自己的设计没有达成、执行不到位,难免心中烦躁。多亏我有之前在赶集带团队的经验,还是比较顺利地跨过了这个坎。

然而code.org的课程A-F,并不能准确对标到小学一至六年级。在一二年级和三年级之间,存在一个明显的断档。考虑来考虑去,还是只能用自己曾经不屑一顾的打字课来过渡,并在几经考察之后选择了typing.com。用打字课结合编程一小时来调整教学进度,解决教案不平齐的问题,还是很有效的。不妨猜猜下图中我在干什么?

出于程序员的职业习惯,我开始探索如何有效地记录和保存课堂上的数据:谁迟到了?谁请假了?谁完成得最快?谁需要补课?……这一切信息都要写到教学日志中,而授课过程中老师要不断在课堂上巡视,不能一直呆在电脑旁,于是我设计出了「上课记录单」,上面拥有这个班的所有信息,可以高效地记录课堂上学生的各种情况,然后择机再录入到教学日志中。

各种头疼的问题一一被解决,教学活动进入正轨后,我就开始研究如何简化一些周期性重复的工作,比如每天通知各班进度落后的学生来补课、每天打印今天的上课记录单等等。我之前没有用过python,正好拿这些小项目来练手。随后在初中开设了编程社团,现学现卖带领学生用python开发小游戏,比如这个 60s 飞机弹幕游戏:

Github地址:https://github.com/shenjia/60s

暑假期间,我在cctalk上举办了一次为期十天的线上编程夏令营,探索如何突破线下教学无法复制的瓶颈。由于我不会推广宣传,20名学员基本上都来自朋友介绍、编程镓教老学员推荐、以及南明教育体系内部。

从小学四年级到初中二年级的孩子,每天一小时的高强度学习,还要写学习日志……多少人能坚持下来?我心里其实也没谱,但最后居然达成了100%的结课率,这可能是在绝大多数线上培训班不敢想象的数字。结课之后,不少家长纷纷追问我会不会开秋季班,也曾设想过,但可惜实在是腾不出时间,只能作罢。

暑假后,我有幸加入了徐雁斐创立的「ET之桥」群,这是一个将工程师和老师联系起来的组织。通过在群内交流我结识了不少志同道合者,同时也扮演了code.org的推广者和布道者的身份,作为座谈嘉宾参与在上海举办的Qcon4Educators活动,还做了两次题为「怎么给小学生上编程课?」和「如何用好code.org?」的分享。

去年请江子来听我的课,领悟到了「课堂是对话的过程」;年初请魏老师来听我的课,认识到了「课堂活动本身不是目标,只是抵达目标的方法」。年末我又借学校举办深度语文活动的机会,请以“一针见血”著称的干老师来听我的课,听完课后他说「只有外行人才谈论一节课的细节」,并建议我把精力放在课程最终的走向和可能性上。我追问他课程设计和实践上有哪些可以改进,他只笑笑说“挺好的”。

两年时间,我从一个毫无教学经验的新老师,迅速进化成一个所谓的“专家”。这是值得骄傲的事情吗?这说明我的课堂设计和实践已经足够成熟了吗?当然不是,这只能说明我经过大量地试错,现在碰巧走在一条正确的道路上而已。

随着编程教育开始大热,校园网络访问code.org开始不稳定,不时出现卡顿或干脆无法访问的问题。为了解决这个问题,我先在局域网中架设squid代理来减少重复的网络请求,然后再用桥接shadowsocks翻墙来应对无法连接的问题。后来发现code.org原来是开源的,也许自己架设本地或国内镜像是一个更好的解决方案,但暂时没有精力去搞。

code.org的课程目前在小学高段仍不饱和,后续课程该怎么做?转scratch还是直接上python?如何让学生每学期都能有作品?是在各个应用领域浅尝辄止,还是深挖其中一个?一年级到底适合不适合开编程课?对code.org课程编排不满意,但提了意见人家不改怎么办?……

路漫漫而其修远兮,吾将上下而求索。

演讲

运城国际学校每周三晚上都会举办教师微演讲活动,届时会有五六位老师分别做十分钟以内的演讲,然后由事先邀请的嘉宾对演讲作进一步的点评。由于我和爱人是双职工,晚上有一人得在家照顾孩子,加上我认为自己还在摸索阶段,根本没什么值得分享的内容,所以此前一般我都是请假不出席的。

直到五月份的微演讲轮到了我,这才不得不硬着头皮上场,做了一场题为「编程到底是怎么一回事?」的演讲,给大家普及了一下编程的概念,顺便介绍了一下自己在备课和授课过程中,是如何运用编程思维来提升工作效率的。

由于大多数演讲者缺乏练习,无法很好地控制演讲时间,超时就成了家常便饭。组织者尝试过举牌提醒、购买LED计时器等方式,效果都不理想。怎么才能既能让演讲者掌控时间,又不至于提示过于强硬打乱演讲的节奏呢?我用一天时间写了一个 zTimer计时器,根据剩余时间来决定颜色,最后一分钟倒计时渐进增强滴答声,时间到后响铃……

Github:https://github.com/shenjia/ztimer

用上这个计时器后,演讲者可以得到相对温和且平滑的反馈,随时把控自己的演讲节奏,超时情况得到了有效控制。

10月份,我又做了一场微演讲,梳理了自己从出生、接受早教、上大学、进入社会、通过游戏出名、去北京互联网圈打拼、辞职做全职奶爸、乃至转行做编程教育的整个过程。这就是「我的成长故事」

到了11月份,在杨超老师的主持下,学生版的微演讲「少年演说家」项目正式启动了。我当了第一期的点评嘉宾,并加入了演讲导师团。

第三期少年演说家,我指导了题为「沉默的大多数」和「享受慢生活」的两场学生演讲。

第一次试讲时,我就要求他们把准备好的稿子扔掉,因为一场成功的演讲一定是和观众的对话,需要用口语,而不能背稿子,很多时候最精彩的内容都是来自现场灵机一动的即兴发挥。经过三次试讲的反馈迭代,最终他们的表现都很理想,令人满意。

第四期少年演说家,我干脆申请去挑战一下主持人的身份。虽然我之前只在幼儿园的亲子运动会上临时客串过主持人,根本没什么经验。但我还是凭着自己的直觉,设计好了主持词和手卡,并带领两名学生顺利完成了主持任务。

演讲是一门艺术。我当然不能算是艺术家,但作为一名资深听众,我知道所有人都喜欢既对他们有用、又能听懂、又有趣的内容。因此演讲者的任务就是让听众有所收获、引发思考、号召行动,而点评者的任务就是从广度和深度两个层次对演讲的内容进行拓展。

今后我可能会写一些演讲题材的文章,跟大家再谈谈我对演讲的理解和想法。

写作

自从去年在简书发了几篇文章被编辑推荐,渐渐就有一些出版社的编辑开始和我接触,看看能不能合作出版书籍。曾经我有一个选题是「浅析代码质量」,就是基于我之前在公司内部做的系列讲座,以此来为自己的六年程序员生涯留下一点凭据。

但是在动笔写了样章「做为一名程序员,你真的理解需求吗?」之后,我才发现要付出的时间和精力比想象中要多得多。整天投身在课程研发和实践中,再抽出时间来写程序员的思维,两件事相关性太小,结果可能都做不好,于是计划便搁浅了。

我读过很多市面上所谓的编程入门书,发现基本上都是老工程师写给新工程师看的,而不是写给零基础的小白初学者看的。这些书要么把重点放在如何用某种编程语言来实现特定功能,要么为了解释一个术语,反而引出了更多的术语,让初学者读得一头雾水。于是我决定写一本真正的编程入门书,书名就叫《编程原来是这么回事》

我只为这本书写好了样章,也就是「编程原来是这么回事:算法篇」。在和出版社签订了约稿合同后,懒人本色又开始浮现,后续的章节一拖再拖。希望在新的一年里,我能腾出足够的时间和精力来把这本书写完。

九月份,顺丰科技出了一档子事,就是开除了因误操作删除数据库的工程师,引发了圈内的热议。我本来是从来不追热点的,因为这样写出来的文章往往不具备长期的价值。然而作为极少数既rm -rf /过生产服务器,也drop过线上库的工程师,我觉得自己有必要出来说点什么,于是破例写了一篇「顺丰该不该开除运维工程师」

十月份,我第一次做南明微演讲的点评嘉宾,发现大家在准备演讲和实操上存在一些共性的问题。于是将点评词改写成了一篇文章「怎么做好一场演讲?」。不久后又应邀做了一次关于PPT的分享,也写成了一篇文章「怎么做好PPT?」

到了11月,我在上课时发现学生把自己写好的练习单揉成一团准备扔掉。原本出现这种情况我一定是要批评的,然而不久前我才读了《萨提尔的对话练习》,于是灵机一动和这个孩子进行了一次冰山对话,结果就有了这么一篇文章「一张揉成团又展平的练习单」

有位同事在之前的单位获得了很高的评价,然而来运城国际工作一段时间后,觉得自尊心倍受打击。在帮助其打磨演讲时谈起这个话题,我讲了自己第一次北京面试时的相同经历:都是自恃甚高,然而被现实狠狠地打了脸。后来就此写了一篇文章「弱者怎样才能拥有尊严?」

不久之后,上面这张图就开始在朋友圈刷屏,非常应景。当你开始怀疑自己,这意味着你已经进入绝望之谷,也即将踏上开悟之坡,其实这是件好事不是吗?

在12月学校举办的深度语文活动中,我旁听了严老师《项链》一课,对文中两处奇怪的数字(400和18000)产生了怀疑:

为什么这对夫妻在坐拥18000法郎遗产的情况下,却对区区400元法郎的开销如此谨慎,乃至于妻子怕把丈夫吓到,而丈夫居然真得被这个数字吓到了?

我在就此话题和一众大佬探讨后,写了一篇文本分析「项链中令人细思极恐的情节」

自从去年在学校开了编程课、孩子上了幼儿园后,我的全部的精力几乎都放在怎么把课上好、解决课堂教学中的问题上了,结果就是有将近一年的时间没有写任何新文章,也真是难为我的读者们了。

不过好在你们都知道:我从来不追数量,我追的是质量

音乐

学吉他两年来,渐渐不满足于只是弹唱别人的作品,自从改编了《运城国际》后,一种想要拥有自己原创作品的心情变得越来越迫切。

爱人买了一把尤克里里,我没事便拿着玩。和吉他不同的是,尤克里里非常轻便,可以随时拿在手中。在一次去游泳的路上,我用尤克里里弹出了一段旋律,觉得很有感觉,决定拿来写一首属于自己的歌。当天晚上就编好了曲子,并确定了每句歌词的字数。

第二天开始填词,先凭自己的直觉写了几句核心的词,事实证明直觉是最好的,这几句一直保留到最后都没有改动过。接下来就搭框架,整首歌分为三段,分别讲少年、青年、成年的心路历程。

第三天词成,找何世雄老师录了一个小样,然后开始找各路神仙修改润色歌词。杨枫、王钢在此过程中给我提供了许多灵感和指导。特别是杨枫,被我缠着一个字一个字地抠,真是难为他了……词定稿之后,就开始研究编曲。马辉、魏强、何世雄、王志江、张笑歌、白永强(排名不分先后)等友人在百忙之余给了我提供了很多指点或修改意见。

最终,我完成了自己第一首原创歌曲《成长》,在魏强老师的鼓励下,我注册了QQ音乐人和网易云音乐,发布了自己的作品。几经波折之后,在平台上听到自己的歌曲,心中的那种骄傲和自豪感,真是无法用言语形容的。

不过,这首歌的弊端也很明显:整体太冗长、节奏平缓、层次不明显、情感释放不到位,甚至有朋友评价具备催眠的功效……

作为完美主义的我当然是不甘心的,于是一直在想各种办法改进。两个月后,历经六个版本的迭代,终于在加入吟唱后,录出了让自己满意的效果,再经过何世雄老师一个小时的后期,发布了最终版本。

最近一段时间跟高鹏宇老师学习,为《运城国际》重新编配了和弦,并找到了自己最舒服的调,在舞台上演出了四五次,还在微演讲暖场时唱了《海阔天空》。在高年级学生上课前的侯场阶段,我都会拿起吉他弹唱自己最近练习的曲目,培养自己的乐感和唱功。于是台风越来越稳,信心越来越足……

渐渐地,我对原本敬而远之的乐理也产生了兴趣,开始研究不同调和弦之间的转换、不同和弦所代表的情绪、和弦编配的各种原则和套路……现在我又拟好了一首新歌的旋律,也许不久后大家就能听到。

我将在音乐的道路继续走下去,以灵魂来书写,用生命去歌唱。下辈子当个歌手?不是不可能好吧。

阅读

自从孩子上了幼儿园,工作日每天接送,有固定两个小时奔波在通勤路上。孩子在车上的一个小时要听他们喜欢的歌,空载往返的那一个小时我便打开得到APP,给自己的头脑补充营养。一年下来,我听完了这些专栏:

万维刚・精英日课
梁宁・产品思维30讲
王立铭・生命科学50讲
华杉讲透孙子兵法
王煜全・全球创新260讲
郑也夫・社会学专题50讲
30天认知训练营
刘嘉・心理学基础30讲
施展・中国史纲50讲
吴伯凡・认知方法论(未听完)

尽管现在阅读对我来说已经是一件很奢侈的事,结果到了年末回头一看,今年还是杂七杂八读了不少书:

教育:《教育的目的》《教师怎样跟学生说话》《小学老师课堂管理》《0-8岁儿童纪律教育》《终身幼儿园》
亲子:《朗读手册》《亲子打闹游戏》
沟通:《萨提尔的对话练习》《谈判力》
逻辑:《权衡》《妙趣横生博弈论》《风险与好的决策》
文学:《故事的形成》《写作风格的意识》
其他:《自私的基因》《必然》《混乱》《穷查理宝典》《 How we read 》《认知升级》《好好学习》《哲学这么好》《给忙碌者的天体物理学》《怎样解题》《叫魂》《退出、忠诚与呼吁》《得到品控手册》

要说本年度对我影响最大的一本书,莫过于李崇健的《萨提尔的对话练习》。

为了解决个别学生在课堂上反复出现的纪律问题,我读了一些相关的教育著作,但仍一直不得其法。直到暑假期间读到了这本书,才如获至宝。书中所描述的「冰山沟通法」,教我们如何持着“了解并帮助他人”之目的,在事件、感受、观点、期待、渴望的多个层次进行探索,最终达成沟通的目标。

排名第二的是怀特海的《教育的目的》 。我发现通过在课程设计和实践中遇到的大多数问题,都可以通过应用“浪漫、精确、综合”三阶段循环来得到解决。我甚至觉得如果能吃透这一本书,就够用大多数老师一辈子了。

排名第三是道金斯的《自私的基因》。此书让我对「进化」这个概念有了更进一步的理解。在一次驾车回家的路上,我还运用进化论分析了为什么自古流传下来的是「一夫多妻制」而不是「一夫一妻制」:

原始社会一个部落是否能兴旺,主要决定于男性的整体战斗力如何,能否抢到并保护资源和食物。假如有A、B两个部落,分别实行一夫一妻制和一夫多妻制。由于男性的战斗力强弱存在随机性,应该是一个正态分布。也就是说A、B两个部落中,都只有几个特别强壮的男人,剩下的男人都很一般。

由于A部落是一夫一妻制,最强壮的男人也只能和一位女子交配,因此其后代在下一代中所占比例并不突出。

而B部落是一夫多妻制,强壮的男人可能和多个女子交配,最强壮的男人往往能得到最多的交配机会,于是留下更多的后代……

这样一代更替之后,B部落第二代的战斗力就会显著超过A部落的第二代,得到更多的资源,拥有更大的生存机会。而A部落因为整体战斗力的差距,生存机会将被显著压缩。于是「一夫多妻制」就战胜了「一夫一妻制」,成为自古流传下来的婚姻制度。

就在这一年马上要结束的时候,我又拿到了侯世达的新著《我是个怪圈》。如同他的上一本巨著《歌德尔・艾舍尔・巴赫》一样,这必然是一本极好的书,可惜我来不及看完,就先不做置评了。

家庭

去年在给孩子选择幼儿园时,我们本着「尽可能地丰富孩子体验」的原则,舍近求远选择了市中心的卡蒙加幼儿园。虽然学费高昂且路途遥远,但一想到孩子能在一个有爱的环境成长、拥有最大限度的自由、拥有丰富的精神和感受体验,我觉得为之付出的一切都是值得的。

通过亲身体验新鲜事物来进行外部环境刺激,永远是教育孩子最好的手段,读书、看动画片则可以作为良好的补充。春节带孩子们去上海逛迪士尼、动物园、科技馆;国庆时逆大流去了北京,转798、国图、中关村,还顺路去参观了苏菂的创业博物馆。回到西安,游说老爹把他的PC-1500捐出去,与其放在家里生灰,不如让后来人观摩学习,还能产生些积极意义。

此外,我一直坚信:玩游戏是极好的启蒙教育手段。大小宝通过洪恩识字玩会了几百个汉字,通过Puzzlinggo、Busy Shapes And Colors积累了对大量形状的感性认知,通过unicorn理解了图像是由像素构成的……

有一段时间,小宝最喜欢玩的游戏就是《滚动的天空》,但总是玩不好。在我的一次次鼓励下,他明白了就算是像爸爸这样的游戏高手,失败也是一种常态,但只要坚持努力不断改进,就能抵达成功。然后他很坚决地说出了一句让我震惊的名言:「小宝才不会放弃呢!」

大小宝时不时会发烧,不能上幼儿园,只好在家休息。当我和爱人都调不开课时,就只好带着孩子去上课,让他们用iPad看动画片。还好学生们经我提醒之下,能忽视他们不时发出的大喊大叫。

年初爱人和我开始尝试给他们做英语启蒙,但是在学会了几个词过了新鲜劲之后,他们就开始排斥了:「爸爸,不要说英文,说中文!」我一想没错呀,中文是我们的母语,能说中文的情况下,确实没有必要说英语。但是我们生活圈里又没有外国人,哪有必须说英文的环境呢?

没有的话,咱就自己创造!

在开车接送他们上学放学的路上,孩子们会要求听歌,大宝喜欢听快节奏的电子乐,而小宝喜欢听摇滚。这时我会给他们放各种英文歌,当他们觉得一首歌好听时,就会问我「爸爸,这首歌叫什么名字?」

因为说不出歌名就听不到想听的歌,所以他们必须得努力把歌名记住,并在我的纠正之下,准确地念出来。一首歌听得多了,他们就会很自然地跟着哼唱,然后不时地问「xxx是什么意思?」就这样,不知不觉间居然已经记住了不少英语单词……发音也相当标准了。

随着年岁的增长,曾经无比困扰我的尿床、吃饭等问题很自然地消失了,然而取而代之的就是纪律问题。孩子会用各种方式来测试你的边界,挑战你的极限,小宝尤其过分一些。于是在「晓之以理,动之以情,警告一次」无效之后,就开始依次进行不同级别的「收拾」

爱的收拾:挠痒痒
扎扎收拾:用胡子扎脸
恨的收拾:打屁股

在我开始运用「冰山沟通法」之后,收拾的次数便慢慢少了,有时在弄明白孩子的真实想法原来是善意之后,甚至会有些莫名的感动。当孩子突然大哭起来,也往往能迅速猜到他的心思,理解并认同他的情绪,从而让他迅速安静下来。

当然获益最大的,还是我跟爱人之间进行的沟通。我这个情商无下限的死脑筋理科男,居然偶尔能迅速精准地解决老婆大人的问题,让她转嗔为喜,这可是之前的我根本不可能做到的事情!

展望

2018年已经过去,这是非常忙碌又充实的一年。展望未来,我希望自己可以在新的一年里:

1、完稿《编程原来是这么回事》
2、做好code.org的后续课程选型
3、编排出小学一至六年级全阶段的教学计划
4、把针对初中学生的python课程系统化
5、通过线上录播课扩大自己编程课的覆盖面
6、让孩子建立起遵守并维护秩序的意识
7、发布两三首新歌

恩,我已经准备好迎接2019年了,你呢?

2 thoughts on “我的2018年”

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.