自由课程与 EdTech:随到随学、试听课、学习进度,以及把人请回来
打开在线课程配置,整个环节就会一次性出现:没有截止日期的持续招生、试听课、可直接收款的在线报名表、绝不凭空编造数字的学习进度、结业证书、下一门课程,以及给中途停下来的学员的回归邀请。它属于教育垂直行业模块,是可选功能,需要管理员手动开启,默认关闭。
「自由课程与 EdTech」这一区块位于教育页面的末尾。它并不新增一个模块,而是打开一个配置,把前面几轮已经建好的东西串在一起——所以对于已经用了一段时间系统的学校来说,这些内容会一下子全部出现。
随到随学,就是没有截止日期的招生周期
打开配置后,系统会创建一个「招生」类型的周期,状态为开放,既没有报名截止日期,也没有录取截止日期。这个「没有」正是关键:在自由课程里,学员想报名的那天就报名;如果只是为了把字段填满而随手写一个截止日期,系统就会开始为一个根本不存在的期限发出到期提醒。如果你之后给这个周期加上了截止日期,页面就不再称它为随到随学,并会说明原因:它已经变成了有固定日期的班期,那是另一回事。
没有声音,不等于零
学习进度取自学习平台的信号,通过中立连接器读取。计算方式是:最近三十天内已提交的作业数,除以已提交加未提交的总数;如果没有活动信号,就退回到出勤率,并且会明确告诉你它退回了。当完全没有任何信号时,该列显示「未测量」,比率为空。它绝不会显示为 0%。
还有第三种答案。如果没有任何连接器知道怎么读取这个平台,状态就是「无法判断」,这和「我们查过了,什么都没找到」并不是一回事。这两句话描述的是两个不同的世界,页面会把它们分开。
三种答案,而不是两种
无论是「是否适合下一门课程」还是「是否适合发出回归邀请」,答案永远是三选一:是、否,或无法判断。刚结业的人自然是下一门课的人选,进度良好的人同样是。而正在被当前课程折磨的人则不是:把第二门课卖给还在第一门课里挣扎的人,就像给今天早上刚投诉过的客户开出一张续费账单。至于学校无法测量的人,得到的是「无法判断」,并附上具体原因,让人来做决定。
下一门该上哪门课
推荐读的是你自己的报名历史:上过这门课的学员,也上过那一门。如果目前还没有任何两门课被同一批学员上过,列表就会返回为空并明确说明,同时告诉你一共查看了多少名学员。这里不会凭空编造,页面还会告诉你每条建议是由哪门课推导出来的,背后有多少名学员支撑。
谁退出了,谁沉默了
退出是一个有日期的事实,不需要学习平台:一条已退课的报名记录就够了。沉默则不同,因为只有当有东西在测量时,沉默才算得上沉默。一名报名仍然有效、却完全没有任何信号的学员,结果会是「无法判断」,他会留在列表里让你看得见,但系统不会凭猜测向他发出邀请。
邀请通过教育沟通服务发出
回归旅程和其他旅程一样,创建时默认是关闭的。从这个页面邀请某人回来,绝不会直接发出邮件:它把消息交给教育沟通服务,由后者逐个收件人做判断(监护人关卡、同意状态、每个人的语言、同一家庭的发送上限),并为每个人记录一行原因,包括那些最终没有收到消息的人。一个自己也能发送的旅程,等于开了第二扇门,而那扇门上一把锁都没有。
试听、付款与证书
试听课是一个「试听课」类型的事件,签到沿用事件页面本来就在记录的那套状态:未预约、已预约、已出席或未到。在线报名表创建时是草稿状态,付款开关关闭且没有金额,因为发布它和用它收钱都是需要刻意去做的动作,而且收款还需要接入你自己的支付网关。
证书来自报名的正式完成,绝不来自一根很高的进度条:95% 不等于结业,而靠进度条发出的证书,正是让一所学校丢掉办学资质的东西。如果该认证声明了以月为单位的有效期,页面会从完成日期开始计算到期时间;如果没有声明,页面就会说明「未声明有效期」,而不是替它编一个出来。
有一个必须坦白的局限:系统目前还不记录每个项目对应授予哪一种认证,所以当你想查看有效期时,需要自己选择认证。要把两者绑定起来就得改动数据结构,而这一轮我们刻意没有做任何结构变更。