自我介绍
我叫刘森,本科毕业于河北师范大学,硕士毕业于南京师范大学。
- 2021-07-09 《Java 8 ClassFile》入选为“51CTO数字化人才证书项目认证课程”,可申请DTC数字化人才证书
- 2015-11-07 信息系统项目管理师(高级)
- 2014-11-08 系统集成项目管理工程师(中级)
目前,我入驻的平台:
社交平台:
我在 Baeldung 的文章:
- Baeldung
- 2022-05-02 Serialize a Lambda in Java
- 2022-04-13 Java 9 Illegal Reflective Access Warning
- 2022-03-28 Compile All Java Classes in Directory Structure with javac
- 2022-03-04 Guide to ByteBuffer
我的课程
- 2022年02月05日,《Java Agent基础篇》(付费课程),课程地址:腾讯课堂、CSDN和51CTO。
- 2021年12月10日,《Java ASM字节码操作》(免费课程,已结束),在腾讯课堂直播。
- 2021年11月03日,《Java ASM系列三:Tree API》(免费课程),视频地址:51CTO和B站 201~252。
- 2021年08月18日,《Java ASM系列二:OPCODE》(免费课程),视频地址:51CTO和B站 101~141。
- 2021年07月08日,《Java ASM系列一:Core API》(免费课程),视频地址:51CTO和B站 001~090。
- 2020年11月21日,《Java 8 ClassFile》(付费课程),视频地址:51CTO。
网络课程的思考
在国内环境下,网络课程是一个什么样的状态呢?整体上来说,有好的老师,也有不好的老师,有好的课程,也有不好的课程,课程质量参差不齐。我参加过免费的课程,也购买过付费的课程,有许多时候带给我的是失望。
当我对某个网络课程感到失望或不满,大致是出于以下两点原因:
- 讲课内容,缺乏逻辑和体系。有些课程,你听一会儿,就会感觉到,课程内容的准备不够充分,想到哪儿,讲到哪儿,思维跳脱,杂乱的思维逻辑,让人听着都费劲儿。比较好的情况,可能是讲课老师自己心里明白,但在表达上可能有些不足;糟糕的情况,可能是讲课老师自己都没有搞清楚,却想让别人听懂。
- 讲课老师,人品低劣。不得不说,有的讲课老师的人品素质,真是够低的。如果是为了吸引学生,讲一些课程相关的奇闻异事,也是一个不错的方法。但是,有的人讲课,为了吸引学生,非要讲几个黄色笑话,语言中透露着萎缩,还自我感觉良好。有的人讲课,都过了半小时了,你会发现,什么实质的内容都没有讲,完全就是吹嘘自己,浪费别人的时间。我读的是师范院校,“学高为师,德高为范”,这句话对我的影响可能会多一些,所以我从内心排斥那些人品素质低下的讲课人。
我觉得,现在的时代,可能是一个浮躁的时代。时代的浮躁,让人总想着追寻短暂的快乐,不想付出辛苦。在社会环境整体浮躁的情况下,人们大都追求短时间内出成果,缺乏精益求精的态度。以前上大学的时候,听老师讲,有的外国人写书,可能经过五年或十年才出一本书,我从心底来说是很佩服的;我想,在国内,可能会有这样的人存在,只是大多数人没有那个耐心。可能我的想法,也终究只是我自己的想法,终会被这个浮躁的时代所淹没。
现在,我开始制作自己的课程,我希望呈现的课程是什么样的呢?最起码,我希望自己的课程,以一种有逻辑、成体系的方式讲出来,保证课程的内容质量。其次,讲课程过程中,也要有道德底线,为了课程有趣味,可以讲与技术有关的小故事,但不能使用花哨而无实质内容的噱头来吸引人,不能吹嘘自己而浪费别人的时间,更不能讲黄色笑话。
课程的形式,应该选择哪一种?是录制视频,还是直播呢?我选择了录制视频的方式。为什么不选择直播呢?其实,直播是有一些问题存在的。第一呢,直播需要等人,有的同学来的早,有的同学来的晚,作为讲课的老师,看到来的同学比较少,就会讲“我们等等其他同学吧”,这就得浪费一段时间。在直播的时候,有的老师,可能还会为自己的课程宣传、打广告,还可能会介绍助教老师,其实这些时间,与课程内容本身并不关系,看直播也不能直接跳过。如果是录制好视频,每一个同学有自己的时间安排,有时间你就看,没有时间就不看,不存在等待别人的情况,也不需要听每一个视频的宣传内容而浪费时间。第二呢,直播容易出现“时间过了很长,但讲的内容很少”的问题,一方面可能是讲课老师准备不足,一会儿想到这个,一会想到那个,一会儿讲这个,一会儿又讲那个,似乎是涉及到多个“名词概念”,但没有太多实质内容,课程内容的水分非常大。在直播过程中,还有一种情况非常浪费时间,就是“在直播的时候调试代码”,有的老师在讲课过程中,由于准备不充分,自己的代码出现了问题,却又发现不了是哪儿出了问题,所以就当场调试,有的时候,花十五分钟到半个小时也解决不了,浪费了很长的时间,只好说等下节课再解决。录制视频,可以避免这种“不必要的浪费时间”的问题。如果录制视频过程中,出现同样的代码调试问题,等调试结束后,可以重新录制,并把遇到的问题和解决方法都添加到新的录制当中去。录制视频的内容,可以提前规划好,先讲什么,后讲什么,有条理、有逻辑的把内容讲出来。如果一遍没有录好,找出问题,下一遍录的时候,就去避免出现同样的问题。虽然直播也可以提前准备好课程的内容,但是讲课内容的质量受当时讲课老师的状态影响比较大,如果状态好,那讲解的也好,如果状态不好,可能讲解的就不太好;有些知识点,可能提前准备了,但是由于受当时状态的影响,有些内容就没有讲出来,就有点“不稳定”。相比于直播,我觉得,录制视频能够解决“不必要的浪费时间”和“讲课内容水分太大”的问题。解决的方式,就是一篇没有录好,那就重新再录一次。
课程的资料,要采取什么样的文件格式呢?是选用PPT,还是Word文档,还是Markdown文件呢?从表面上来看,我选择了网页的形式,但本质上来说,我的网站是利用jekyll结合markdown生成的网页。为什么不使用PPT或Word文档呢?当然,PPT或Word文档都有自己的优势,但是它们也有自己的不足之处。因为我的课程是与编程(Programming)相关的,所以代码(Code)会承担一个非常重要的角色。我也看到了,别人在用PPT讲课,用PPT只能呈现代码的一个小片段,如果代码很长,就显示不全。我听别人用PPT讲课的时候,经常会有这样的疑惑:我似乎听明白了,但又不完全懂,我可只知道你列出的代码的含义,但是却不太清楚别的地方的代码是如何编写的。所以,我希望在我的课程中,我呈现的代码是完整的,而不只是代码的一个小片段。因为我用的是网页,所以可以将整个代码都呈现出来,它不会像书籍一样有“篇幅限制”。再有一个问题,就是课程资料版本不一致的问题。就比如说,上课之前,讲课老师把资料给了你,在讲课过程中,可能讲课老师发现了自己的问题,把自己的PPT或Word文档修改了,那这就和你的资料版本有差异了;或者说,讲课老师负责任,把他修改之后资料再发给你,那你可能就有多个版本了,时间长了,可能你也会出现混淆,不知道哪一个是最新的。我的网站,是用Markdown语法编写的,所以我可以把这些资料和代码放到gitee或github上管理起来。如果我修改了内容之后,就会把修改的内容同步到gitee或github上,那么只要你打开我的网站,看到的就是最新的内容。
那么,随之而来的一个问题:无论付费购买课程的同学,还是没有付费购买课程的同学,都可以查看课程的资料,那么对于付费购买课程的同学是不是不公平呢?对于这个问题,由于决定是我自己做出的,也没有资格来说什么是公平、什么是不公平。因为我觉得,“自己的决定,由自己来评判”,这种做法是不合理的。所以,这件事情到底公平不公平,还是由别人说了算,可能不同的人会有不同的想法。我觉得,可能有一部分原因来自于这里:有许多网课老师会讲,课程资料是内部使用的,不能向外传播。其实,我也会担心另外一件事情:别人会不会复制了我的课程内容,然后当成他自己的原创内容。但不管怎么说,对于付费购买课程的同学,我希望“付费的价值”主要体现在“观看视频”和“课后答疑”服务上,对于每一个问题,我都尽量去回答;对于没有付费购买的同学,我也就不会提供“课后答疑”的服务了。
课程文字内容的风格,采用哪种方式呢?是口语化的表达,还是科学严谨的表达呢?我在编写文档的时候,尽量采用口语化的表达,经常会用到“我们”、“大家”、“你”这样的词汇,因为我觉得这样,会感觉比较“直接”,像是在对话一样;对问题的描述,也尽量使用简单的、易懂的词汇。有的时候,我读一些文章,这些文章为了表达严谨,就使用标准化、专业化、多重修饰的词汇来描述,让文章读起来非常晦涩难懂。在写文档的过程中,我常常遇到这样的问题:对于一个事情,如果描述的文字太多,就担心别人不愿意读,因为我自己也不愿意读大段的文字;如果描述的文字太少,又担心会导致别人理解不了想表达的内容,所以就很难取舍。
课程的价格,应该如何定位呢?依据51CTO的定价参考标准(每小时4~30元),对于付费课程,我一般会选择每小时15元,让课程的总小时数乘以15,得到整体价格,最后再进行一个上下浮动的调整。后续,我也会做一些免费的课程,目的是为了吸引更多的同学来学习自己的课程。
课程,靠什么去吸引用户呢?我想,好的课程内容,才是获取优质用户的关键。
最后,如果发现我的文章当中有任何的错误,例如程序代码有误、有错别字、语句不通顺、有更好的文字描述,都可以联系我。
联系方式
关于网站
本网站是基于Jekyll搭建起来,网站主页参考的是W3.CSS的模板。