V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
kalman03
V2EX  ›  分享创造

说说最近做“神奇课程表”这个小程序的思考

  •  
  •   kalman03 · 2019-09-01 01:32:23 +08:00 · 5162 次点击
    这是一个创建于 1940 天前的主题,其中的信息可能已经有所发展或是发生改变。

    产品名称:神奇课程表(微信小程序) 上线时间:2019-08-31

    课程表类产品很多,在各应用市场搜索一下,不胜枚举。但我下载体验了一个一个课程表 APP,大多为各程序员练手之作,功能简单略显粗糙,当然也有大家耳熟能详的诸如超级课程表。

    然而,即使如此,我依然觉得目前所有的课程表产品未能满足这些自我感觉很必要的需求:

    1、我周四下午没有课,我是否可以去其他专业旁听自己感兴趣的课程?怎么知道哪个系哪个专业在周四下午的哪里上课呢?

    2、同步课程表要繁琐的登录教务系统,再厉害的产品好像也没法覆盖全国高校使用的 N 多的教务系统,是不让一些高校学生使用吗?

    3、路漫漫其修远兮,大学四年,研究生三年,要是有个简单的学习规划指南多好,哪怕只是简单的专业必读书籍排行榜;

    4、......

    基于此,利用这段时间,我写了一个基于共享经济模型的微信小程序“神奇课程表”。一个用户创建了一份课程表( Repo ),任何人可以关注( star )这份课程表,有权限的用户还可以作为 contributor 为这个课程表进行完善,他们都有机会共享这份课程表的动态变化和提醒。当然,更多功能还在路上。。。

    如果你正好在国内高校上学,不妨体验下,一个极简的课程表小程序( Ad.)

    23 条回复    2019-09-26 14:04:46 +08:00
    deepdream8
        1
    deepdream8  
       2019-09-01 09:40:18 +08:00 via Android   ❤️ 1
    点子可以,需要大量的学生用户入驻,才显得有意义
    keith1126
        2
    keith1126  
       2019-09-01 09:44:46 +08:00
    换个图床吧,新浪图床早就不能用了...
    draguo
        3
    draguo  
       2019-09-01 11:23:56 +08:00
    课程表最大的问题是每个班都不一样,如果你的用户量很少的时候就是每个人都不一样,对接教务系统什么的坑又多,还不如拍照识别呢,不知道现在有没有这么做的。
    kalman03
        4
    kalman03  
    OP
       2019-09-01 11:24:43 +08:00
    @deepdream8 你说的没错,确实是这样,第一个版本稍微稳定点我就来推下

    @keith1126 可以的啊,你访问不了吗?
    kalman03
        5
    kalman03  
    OP
       2019-09-01 11:25:34 +08:00
    @draguo 我的课程表采用的是自己录入的,自由度极度灵活的
    draguo
        6
    draguo  
       2019-09-01 11:32:04 +08:00
    @kalman03 自己录入的缺点就是很慢,我觉得能上拍照一秒导入体验更好
    keith1126
        7
    keith1126  
       2019-09-01 11:45:39 +08:00
    微博图床会对请求的 Referer 进行验证,微博站外是加载不出来的(虽然可以看,但是操作比骄傲麻烦
    kalman03
        8
    kalman03  
    OP
       2019-09-01 11:54:22 +08:00
    @draguo 这个难度系数有点高,和对接教务系统一样麻烦
    tigerstudent
        9
    tigerstudent  
       2019-09-01 12:39:05 +08:00 via Android
    好像几年前有个 APP 超级课程表就有这样的功能吧,还有个叫课程格子
    MonoLogueChi
        10
    MonoLogueChi  
       2019-09-01 12:44:36 +08:00 via Android
    以前课程格子就是这样啊,可以从教务系统导入,导入失败的话也可以手动录入或者是导入别人的课表。
    Mystery0
        11
    Mystery0  
       2019-09-01 12:59:44 +08:00 via Android
    大学不是自己选课吗,除开必修课(必修课也可能不同老师不同时间),其他选修课都是自己选的,也就是说每个人的课表都不一样,那么这个所谓 repo 岂不是只能自己使用?事实上很多技术足够的高校是自己有教务系统的客户端的,这些学校的学生是不会成为其他课程表的用户的,当然还是有一些学校只有网页端,一般这些学校都是用的通用的教务系统(比如正方),所以可以针对性的根据这些通用教务系统进行解析。所以,要么客户端对教务系统做解析,要么去 py 找别人要接口,自己只是单独的做一个需要手动录入的客户端是没什么人用的
    Mystery0
        12
    Mystery0  
       2019-09-01 13:03:08 +08:00 via Android
    刚刚又看了一遍,感觉这个所谓的 repo 指的是课程,而不是课程表?也就是同一个老师的同一个时间的课程的班级,比如周一上午 3-4 节的高数课,repo 就是这节高数课本身,而其他 star 这节课程的用户实际上是将这节课程加入到自己的课程表,如果课程自身时间发生变化,相应的这些 star 了的用户的课程表也会发生变化。这个思路倒是不错,只是需要大量的用户
    vizards
        13
    vizards  
       2019-09-01 13:05:08 +08:00 via iPhone
    大学时候给学校写过校园 app,随便说两句。

    现状是去年教育部要求国内各高校加速推进线上教务系统的安全性,所以现在许多高校的教务系统都(被迫)用了 https,有些还做了一些账户密码加密,或者仅限内网访问。有点反爬虫的意思,导致超级课程表、课程格子之类的 app 功能上很不稳定,有些基本就用不了了。

    LZ 提出的这种方案有些 UGC 的意味,把程序需要做的大量的对不同教务系统的爬虫适配工作交给用户去做了,但是带来了几个问题,一是差异化的工作量能否被 fork,pr 之类的功能有效减少,尤其是到了大二大三研究生,同专业同班级的学生的课程差异也会很大,老师可能不同、教室可能不同、时间可能不同。二是如何维持少数 contributer 的持续维护动力,大家也要毕业离开的,而且毕竟 99%的用户都是伸手党。三是目前校园应用的趋势是细分化的,因为课程表虽然是首要需求,但是考试安排、成绩查询、学校通知之类的功能是必须要求应用针对每个学校细分化,而且无法通过类似 UGC 方式去汇总,只有一个课程表功能较难吸引用户留存。

    过去几年一直对国内高校校园应用感兴趣,做了一些东西试水,如果同样对这个细分领域感兴趣可以交流。
    kalman03
        14
    kalman03  
    OP
       2019-09-01 13:57:34 +08:00
    @vizards 感谢你深入的剖析,个人很赞同。
    课程表是一个切入口,也是一个刚需,现在只有两个 tab,中间的发现 tab 正在研发中,会有针对大学生粘性较高的产品出来。我自己有些在过滤的产品:成绩查询、考试倒计时、早起签到、专业数据排行榜、豆瓣电影在播 /即将上映、11 点 11 分、故事接龙等,还在找一个最适合高校学生的产品来做 UGC,最终还是想通过工具走社交 /内容的。实际上,成绩查询我发现“中国政务服务平台”里面已经提供,部分我会做跳转即可,不想自己爬数据了。

    @Mystery0 @vizards 基础理论课为 master 主线,选修基本上可以基于 master 做 fork,或者可以理解为 master 的多个 future 也行。现在单凭 UGC 录入其实不是很复杂,只是第一步确实有困难。
    deepdream8
        15
    deepdream8  
       2019-09-01 14:39:52 +08:00 via Android
    @kalman03 你有推广渠道?可否分享一下?
    kalman03
        16
    kalman03  
    OP
       2019-09-01 15:59:43 +08:00
    @deepdream8 人肉,算不算,o(∩_∩)o 哈哈
    mzlzero
        17
    mzlzero  
       2019-09-01 16:34:37 +08:00
    校园广告投放的渠道我倒是有认识的人
    wenjian96
        18
    wenjian96  
       2019-09-02 15:29:05 +08:00
    自己大学期间的体会:课程表上了两周课基本上记得住了,如果有下载课程表类 APP,一般这个时候就卸载了。
    另外就是大部分学生都没有那么闲,会去听其它课。
    UIXX
        19
    UIXX  
       2019-09-03 11:16:49 +08:00   ❤️ 1
    不知道你的小程序的定位是什么?纯练手还是有推广运营的想法?

    课程表程序的难点
    适应大学课程安排的灵活性,对于第三方学生程序来说是首要解决的问题。
    这本来是教务系统的功能,非官方的做法是手动录入( UGC 方式)、爬虫或者与教方合作(教方入驻或者开放数据接口)。
    如果单单只考虑手动录入方式,先不讨论用户积极性的问题。我作为学生首先要做的是新建一张课表或者 fork 一张课表过来修改,每次有课程变动我都要手动更新,对比无需自己忧心的教务系统,它给我提供的便利体现在哪?

    学生希望的程序
    > 支持选课,避免官方教务系统拥挤。
    > 支持课程自动与教方同步。
    > 支持小班讨论群( IM )。
    > 支持日常通知,尤其是提醒学生完成作业,准备期中、期末考试。
    > 支持学分、成绩查询。
    因为大学的教学管理比较宽松,学生更加关心的并非什么时候上什么课(毕竟还可以泡馆自学),而是我选了什么课、我考试成绩如何、我学分还够不够。虽然名称是叫课程表,但实际上“教务系统移动版”才更受这个群体的青睐。

    平台级别的学生服务程序对于个人有多难做
    无论是超级课程表、课程格子还是 LZ,其实都是想做平台级的产品,为每一个高校的学生服务。但是泛用性与学校特色始终是天平两端,UGC 对于个人或者小型公司而言都是个不错的选择,但不应该把核心功能完全交由用户去填充内容。
    > 用户的动作不可预测,而核心功能的体验却会影响产品口碑。
    > 用户的使用周期可见,要吸引新的用户就需要新的推广。
    如果不跟教方合作,这类应用就需要一刻都不停歇地推广营销。参见超级课程表。但在尚未盈利的阶段下,纯烧钱。对于个人或者小型公司来说这反倒是最头疼的事情。

    学生服务程序如何产生粘性
    只有一条路,就是做学生社交。
    > 课堂内社交。班群、专业课群( IM )、专业版块( BBS )、校友互助等等
    > 课堂外社交。树洞、校园周边、跨专业 /校联谊等等
    当然,平台必须严管内容。

    学生服务程序如何盈利
    所有商业程序(除非你做慈善)都必须考虑的问题。对接教育系统的课程表程序来说似乎很难
    > 受众是学生群体,消费能力相比(职业人)低
    > 第三方学生服务程序并不是刚需
    个人想到的比较靠谱的几点是:
    > 一般商业广告
    > 校园论文期刊数据库付费查阅,图书馆电子档付费查阅
    > 校园内悬赏求助
    > 对聘方进行严格甄选后的招聘出租
    > 低价的便学服务对接(文档复打印、机械维修、电脑清理等)
    encro
        20
    encro  
       2019-09-05 13:55:16 +08:00
    大学期间,
    学习、就业、赚钱不是刚需(最多只能算临时刚需),
    吹牛聊条泡妹打嘴帐才是(长期)刚需。
    caijunyi
        21
    caijunyi  
       2019-09-19 00:25:26 +08:00
    教育这一块要注意底线!
    kalman03
        22
    kalman03  
    OP
       2019-09-22 20:34:53 +08:00
    @caijunyi 兄台说的是指啥?
    caijunyi
        23
    caijunyi  
       2019-09-26 14:04:46 +08:00
    @kalman03 校园贷啊什么的,学生有时候真的很无知,不懂!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   976 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 19:03 · PVG 03:03 · LAX 11:03 · JFK 14:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.