忆恩师刘自朗,我的高中物理老师

1984年,当我还是一个乡下长大的高一学生时,学会了用BASIC语言编写程序,成为湖南第一批写程序的中学生,距今三十六年。这三十六年,我从学生,成为一名专业的软件工程师、系统架构师、CTO,到自己创业,写程序从未间断。现研发物联网大数据平台,开源的TDengine里就有我自己贡献的4万多行代码。这一切,源于我中学物理老师-刘自朗老师。是刘老师引我这个乡下伢子进入了计算机世界,给我打开了世界科技的大门。今天教师节,刘老师虽已仙去,特刊载我6年前写的一篇回忆文章,感谢刘老师对我的培养和教育,感谢教过我的所有老师。

1983年我考入长沙县一中,刘老师是我物理老师。那时刘老师已经退休,学校返聘他教高一的物理。他在学校的名气很大,不仅书教的好,更重要的是动手能力强,能开汽车、修汽车、修电视机等各种电子设备,待人热情开朗,还是长沙市政协委员。与其他老师相比,还能用英语进行交流。这在1983,而且在一个县的中学,是一个传奇。因此我们第一堂课,就是带着敬意、竖起耳朵听的。

 

刘老师上课,毫无疑问是最受学生喜欢的,不管是物理成绩好还是差的都喜欢他的课。他最喜欢用各种比方来解释物理现象,还自己制作实验教具。我的印象是他制作了横波演示,加速度演示的教具(校史馆里应该还留有)。上课用的语言是诙谐的,记得一次他讲城里人太娇气,不说长沙话的“lia 2声”, 而是一个普通话的“累”。上课还不忘让我们记住一些英文单词,比如力用F表示,是因为力的英文单词是Force,质量用M表示,因为质量的英文单词是Mass等等。还记得有次他开完政协会议回来,带了一本牧师送的圣经到教室,念了一页,给大家普及了一下科学与宗教的区别与联系。

 

刘老师的强项还在于动手能力,激发同学的兴趣和积极性。一个学期不到,我马上加入了他组织的摄影兴趣小组。80年代初期,对于一个农村长大的孩子,照片都没拍过几张,就更别说玩照相机了,因此摄影对我的吸引力是巨大的。他让我们看摄影的书,然后拿出他自己的120相机,教我们一些基本技巧。不仅如此,我与几个同学还学会显影、定影,自己冲洗胶卷,放照片。印象特别深的是,没有暗室,我们几个同学都是躲在被子里倒腾显影罐。现在我手里还保留着不少高中时给同学拍的、自己冲洗的黑白照片。搞完摄影,我们又开始在刘老师指导下,学无线电,自己制作收音机。他给我看了本收音机原理方面的书,也给我看了他家里他自己装的收音机和电视机,我和几个同学准备开干的时候,一个大的变化发生了。

 

84年上半年,刘老师邀请到了当时湖南省物理学会理事长陈积华教授到学校,给我们做了“第三次浪潮:信息革命”的报告。紧接着,刘老师带着我与很多同学到市里面参观“湖南省首届微型计算机展览”。刘老师在一堂课上,花时间给我们解释计算机的几大模块,解释二进制、十六进制,计算机是如何执行0101代码的。一大群农村出来的孩子,还不知道世界是什么样子的时候,被信息革命的前景所深深的吸引住了。

 

长沙县一中的硬件条件一般,没法与长沙市的几所名牌中学相比。但是正巧,邓小平那年说了一句“电脑要从娃娃抓起”, 我们赶上了时候。刘老师以及其他学校老师想方设法,让学校获得了六台团中央赠送的电脑-Laser 310. 这个Laser 310是很简单的16位计算机,就一个简单的键盘,要连接电视机做显示屏幕,仅仅能用BASIC语言编程,只有64K内存。计算机到学校后,没有任何老师同学知道如何用。刘老师就安排我与几个同学先看书,同时看湖南电视台当时正播放的一个电视教育节目,长沙铁道学院彭仲昆老师的“计算机基础知识讲座”。印象很深的是,我们当时连个简单的赋值语句就是不明白,为什么会有 X = X + 3这样的语句。忽然一天,计算机的基本概念一下就清楚了,我能开始写BASIC语言程序了。84年暑假,刘老师还让我把Laser 310带回家。当时很多人来家里看,因为没有人知道电脑是什么样。

 

刘老师以及后来我高二的数学老师王紫阳老师还想了很多办法,让我们几个学电脑的同学有更多途径获得更多的知识。我们专门去湖南轻工业学校,他们请那儿的老师给我们介绍一些简单的算法和编程技巧,包括冒泡分类等排序方法等等。从高一的第二个学期起,我的业余时间就几乎被计算机占住了。高二的时候,我们年级的考试统分就用我写的程序来做了,节省了老师打算盘的时间。因此当时班主任给我一个外号“陶电脑”。

 

刘老师自己后来也完全学会了写程序,那时应该已经是六十好几的人了,是老师中最先学会写程序的。我去美国留学后,中国能够上网,他是率先上网的人,我们之间通过很多次电子邮件,他还问过我很多计算机方面的问题。80岁的时候,有次去看他,我还记得他自己在计算机上编辑制作视频,不停问我这个软件那个软件。

我小学初中是在长沙县乡下上的,即使离长沙市不到30公里,但仍然是封闭落后,根本无法接触到任何新的东西。没有刘老师,我不可能接触到计算机,更不可能去学习写程序,成为湖南第一批写软件的中学生。有趣的是,当时我们一起学计算机的同学,高中毕业后,倒都没有学计算机专业,我是进了中国科大的近代力学系,肖波是进了湖南大学的机械系,毛健进了清华的生物系。但工作后,我们几个人又都进入了IT行业,而且还在IT行业战斗。

85年上半年的时候,我们知道哈雷彗星一年之后要光顾地球,这是76年才能遇到的奇观,因此觉得应该抓住这机会。但一个县里的中学,没有望远镜,长沙也没有我们学生可以使用的天文台,怎么办?我、肖波、杨旭东、杜金波四个同学当时突发奇想,自己做一望远镜。刘老师成了我们的导师。首先,他自己去长沙县榔梨镇上的县图书馆借来了《天文爱好者》杂志,该杂志连载了南京紫金山天文台杨世杰研究员一篇关于自制牛顿反射式望远镜的文章。我爸正好凑巧手里有几块12公分直径的光学玻璃,我姐当时已经参加工作,她们下属单位有个制作放大镜的车间,从那里我找来了金刚砂。我们与刘老师一起琢磨了一下杨世杰的文章,觉得手工到底是怎么磨的。磨镜片,不是一天两天能搞好的,因此需要专门的地方。刘老师帮我们找到学校物理教研室一间空闲的办公室,我们几个同学下课就聚在那里磨镜片了。折腾一个星期后,觉得镜片应该变凹了。但怎么标定这个镜片是否OK而且测试它的曲率,我们几个人就是搞不明白文章中的阴影测绘法。刘老师鼓励我们写信问天文台。我当时就马上给南京天文台的杨世杰研究员写信,没想到立即得到他的回信,解决了我们的疑惑。镜片磨完后,还要镀银或者镀铝。刘老师帮我们找到从县一中调到市37中当校长的赵建茹老师,要她指导我们用化学方法镀银。在赵老师指导下,我们镀银成功。经过几个月的努力,我们望远镜终于手工制作出来,让老师同学大吃一惊。有次回到母校,看到望远镜还摆在那里,心里说不出的高兴。

我后来在中国科大读天体物理,与我高中的这段经历很有关系。刘老师不仅成了我摄影、计算机的启蒙老师,更是成了我天文的启蒙老师。

高二起,刘老师就不教我物理了。但是我仍然经常往他家里跑。他家就在学校校门外,是个独立的小院子,两层楼,修的很精致。到刘老师家里,听他教诲之外,主要是去看他家里的各种小人书,物理类的书,还有什么汽车、电视机的书,也在他家里的小小作坊里看他做的各种电子设备, 包括他自己组装的几台黑白电视机。对我影响很大的应该是小人书。刘老师的原话想不起来,但意思是很多经典名著太厚,太多,没时间看,看看小人书就够,精髓就知道了。因此我整个高中应该是没有读过什么大的文学作品的,后来也很少,完全是受了刘老师的影响。因为老到刘老师家去,很多习惯都受了他的影响。比如刘老师倡导不抽烟、不喝酒、不钓鱼、不打牌,这也成了我的生活态度。

2003年与刘老师在湘江边上

高中毕业后,我与刘老师的交往一直没有断过。每次回长沙,我总要找时间去他家去看看,听听他的教诲。到美国留学工作后,我们最开始是书信来往,后来是电子邮件。每次到他家,都是给我看他新拍的照片、视频等等,问我的工作情况。他最关心我的问题是,做的东西听起来都挺不错,就是要知道怎么赚钱才行。马年春节前,我去看他,给他介绍快乐妈咪胎语仪,得到他的肯定,这个应该能够赚钱。每次见到他,看到他都是精神很好,身体很结实,吃大碗面条。80岁那年,有次给我打电话,居然是骑自行车的时候给我打的。80岁以后,他还去很多地方旅游过。只到最近两年,90岁的老人,腿脚终于不太听使唤了,就安心住在女儿家里,不到处跑了。

刘老师给我的影响是巨大的,不是简单的上了他的物理课,更多的是他给我打开了世界的窗子,让我一个在闭塞环境长大的小孩迅速的了解到了最新的科技,让我有动手的能力,让我从高中起就学会了折腾,让我从另外一个角度去看这个世界,让我有了活到老学到老的活榜样,而且让我学会健康快乐的去生活。在80年代,大学升学率还很低,学校的教育完全是100%围绕高考转。而我在刘老师的影响下,成了一个另类。不是一个天天啃数理化书本的学生,而成了一个玩摄影、玩电脑、玩望远镜,有很强动手能力的人。按今天的话说,极客一名。

2002年起,我三次创业,而且每次做的都是创新的高科技产品。熟悉我的人都知道,我是个头脑灵活、主意很多的人。这创新的源泉相当一部分应该归功于刘老师对我的教育和影响。如果我没有遇到刘老师,我学习成绩一定会更好,但我只会是一个标准的很会读书的乡下伢子,很难想象出我今天在做什么。我真的很幸运,在我成长的过程中,遇到了这样一位恩师。刘老师,谢谢您!

陶建辉写于北京望京

2014年4月19日


点击阅读原文,体验我贡献了4万行代码的TDengine!

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Physics Modelling for Game Programmers 游戏编程中的物理建模(中文删节版) 后记】 我将这本书界定成 3D 游戏开发的入门书籍,其实一直来我都有一个疑问,起初的时候我看 了很多 3D 开发方面的书籍也做了一些例子程序,但是对 3D开发还是有许多未知,自从我 见到这书以后,我终于明白我缺少的是什么了?其实就是需要一条线把我所学过的这些知识 全部串起来,反观当下无论是纸皮书还是电子书往往都是将 3D 开发分成若干块,专门讲一 块或是几块,开发是一个整体,所以我看了那么多书似乎前面还是有一层纱捅不破。 如果你是个新手,那绝对在此书找到很多你感兴趣的东西,如果对于 DirectX 你已经足够 了解但就是不知从何开始,这本书可以整理你的思路,带你走出山谷奔向另一座高峰。 大概因为作者是一名老师的缘故,论述有些拖泥带水,文中涉及到的 c++以及 Direct3D 基 础知识我都没有翻出,我相信你轻易就能找到相应的替代品,对于 15 章和 16 章的实例分 析没有翻,我想任何具备高中物理程度的人都不难推导出这些公式,所以传言说老外的应用 科学的普及教育做得奇差,大概是真的。 本书只能作为免费传播,请勿用于商业,谢谢,最后我非常希望我的努力能换来你的赞许, 如果真是这样,那我将很荣幸! 底层模式:HAL 和HEL(删除) 高层模式:DirectX 组件(删除) COM对象(删除) 使用DirectX 初始化 DirectX 的硬件方法 使用DirectX 向导初始化 Direct3D 使用物理建模框架初始化 Direct3D 小结(删除) 第三节:3D 编程和物理学的数学工具(删除) 三角几何(删除) 2D坐标系(删除) 3D和4D坐标系(删除) 物理单位(删除) 矢量 代码中实现的矢量:物理建模的数学库 矢量与标量的乘除法 点积 叉积 单位化矢量 投影 Direct3D 中的矢量 矩阵 特性 加法和减法 乘法和除法 矩阵相乘 转置 行列式 逆矩阵 小结(删除) 第四节:2D 变换和渲染 2D变换 主动和被动变换 平移 旋转 缩放 组合变换 变换实现:一个三角形的自旋 使用物理建模的框架 设定几何体 更新帧(Frame) 渲染帧 将所有的步骤放置到一起(删除) 小结(删除) 第五节:3D 变换和渲染 3D变换 齐次坐标 平移 缩放 旋转 3D管道 局部坐标转世界坐标 世界坐标转观察坐标 观察坐标转投影坐标 投影坐标转屏幕坐标 3D渲染 例子1:3D 自旋三角形 例子2:自旋的圆椎 小结(删除) 第六节:网格(Mesh)和 X 文件 纹理 从文件创建纹理 设定纹理 材质 装载一个网格 获取纹理和材质 渲染网格 清除网格 d3d_mesh类 载入一个网格 渲染一个网格 d3d_mesh类中的引用计数 小结(删除) 第二部分:3D 对象,运动和碰撞 第七节:动态粒子 点状粒子 一维运动力学 速度(删除) 速度的导数求法(删除) 加速度(删除) 力 2D 和 3D 运动力学(删除) 质点模型 介绍d3d_point_mass类 使用d3d_point_mass类 游戏中的质点 小结(删除) 第八节:粒子碰撞 碰撞检测 包围球 包围圆柱 包围盒 空间分隔的优化 碰撞响应 动量守恒 能量 弹性碰撞 刚性碰撞 补偿系数 2D和3D 的粒子碰撞 球的碰撞 实现 小结(删除) 第九节:刚体动力 刚体 重心 2D 刚体旋转 2D 刚体的粒子 转矩和惯性力矩 3D刚体 3D转矩 3D 的平行轴定理 主轴线 定向 3D 刚体的实现 d3d_rigid_body类 初始化 d3d_rigid_body对象 更新d3d_rigid_body对象 渲染d3d_rigid_body对象 小结(删除) 第十节:刚体碰撞 碰撞检测 粗糙近似 碰撞检测的改进 碰撞响应 线性碰撞响应 角度碰撞响应 组合碰撞响应 更新物理建模框架 小结(删除) 第十一节:重力和抛射体 牛顿万有引力法则 抛射体轨迹 抛射体运动模型 冲力与恒力之间的差异 滚动 小结(删除) 第十二节:质量与弹力系统 实现弹力所需的事 头发与马尾辫 织物 一切从周期运动开始 胡克定律 衰减周期运动 实现织物 升级质点 弹力 织物类 初始化织物 更新和渲染织物 进行调整 增加织物的表现力 小结(删除) 第十三节:水体与波纹 水体与浮力 水的特性 浮力产生的原理 求取压强和密度 运动阻力 对摩擦力的观察 粘性阻力 水体的流向 波 实现水体 低开销实现的技巧 3D水体 在水体中放置对象 为刚体增加浮力 它浮起来吗? 小结(删除) 第三部分:3D 模拟 第十四节:为游戏开发需做的准备 重新设计物理建模的框架 简单程序的初始化 添加一个游戏类 设置高效的矩阵变换 恢复丢失的设备对象 使用质点重新定义刚体 网格原点和重心 DirectInput 介绍(删除) 初始化 DirectInput(删除) 获取键盘和鼠标输入(删除) 关闭DirectInput(删除) DirectX 中的摄像机运动(删除) 小结(删除) 第十五节:汽车,气垫船,船只以及小舟(删除整章) 汽车 能量,力,加速度和摩擦 车辆的空气阻力 制动 车辆拐弯 实现一个基本的车辆模型 气垫船和无引力飞船 气垫船是如何工作的 气垫船的空气阻力 气垫船拐弯 船只和小舟 船只和小舟的包围边界 船体容积的计算 船只和小舟的续航能力 质量和有效质量 阻力和小舟 空气阻力 流速和波 小结 第十六节:飞机和宇宙飞船(删除整章) 飞行模拟的简单方法 低空飞行或是无物理影响 实现一个简单的飞行模拟 与飞机相关的物理学 飞机的主要部件 基本的动力 飞机建模:具备适合的地点和动力 与宇宙飞船相关的物理学 宇宙中的空战 火箭 月球着陆器 其他行星已知的物理学 其他行星待论证的物理学 结束语(删除) 附录 A 术语(删除) 附录 B C++的一个简明介绍(删除) 附录 C window编程基础(删除) 索引(删除)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值