2020年OO助教工作总结
随着这学期课程的落幕,我一学期的OO助教工作也宣告结束。这学期我的工作主要在系统组,和OO后台的数据库打交道。
作业查重
我几乎每周都会做的例行工作,是对每周的homework进行查重管理。由于使用了课程组提供的查重平台,所以我的主要工作其实是从数据库上dump下每个学生和作业的commit之间的关系。只需要将git链接和学生信息导入查重系统,系统会自动进行相似度计算,从而进行查重,总的来说,工作量不算很大,大部分工作的重复度较高,且自动化程度高。
查重过程中,我意识到整个查重系统依然存在可以改善的地方。首先是查重平台作为一个独立的平台,和buaaoo.top网站相互脱离,信息不互通,每次都只能自己导入信息。然而这样的工作,是可以通过改写前后端内容,做到全自动化查重的。不过,由于后端使用Java语言Spring框架编写,且大部分查重代码都是Java代码,和目前后端的Ruby、Python并不相同,无法整合到现有系统。最简单的方法是直接对Java后端进行改写,但是由于我并没有掌握Java后端开发的技术,且该学期课程组没有在此提出过多计划,所以搁置。我感觉,在OO的其他开发项区域稳定之后,可以考虑将查重平台的进一步整合提上日程。
另外,查重过程中遇到过一次乌龙,即JML作业时,由于许多同学直接复制了大量的官方源码,导致查重的重复率过高,干扰了正常的查重项目。虽然在下一次作业中,课程组立马制定规则来阻止相关行为的发生,但也侧面反映出来查重平台存在一定的问题,尤其是将“注释”也算入了查重的范围。关于注释到底是否应该被查重,我认为有待商榷,或许查重平台可以分情况讨论这种问题。
期末数据整理
由于我在系统组中和数据库打交道较多,在期末算分的时候,我负责从数据库中导出同学们在讨论区中的活跃度情况。我个人的操作方法是使用SQL语句导出想要的所有数据,然后用Excel进行处理。使用Excel的原因有两点,一是课程组最后要的就是表格数据,二是Excel在这种数据处理方面确实比Python好用不少(说Python秒杀Excel的应该是不会用Excel)。
然后,我还帮忙统计了每次博客作业的评分进行整合,以及帮助lqq做过一次单元作业的通过情况的图表绘制。我的这些工作都和实际教学比较脱离,更多的是用SQL和Excel在计算一些后台的计算工作。
体会
这次担任OO助教比较突然,所以实际到手的任务可能会和其他助教不太一样。就我个人而言,我没有特别感觉到自己是作为一个“助教”而存在,更像是一个知道课程运行机制的“会计”。但这也怪我自己对本学期的题目设计没有去主动了解,真正访问讨论区和课程网站的次数屈指可数,导致老师在让我分享对某一单元的改进意见时,我无话可说。这一整个学期,我没有真正的为课程组分担过多少工作,还有一些预期分摊给我的工作最后不了了之,因而,我能够谈论的体会更多是出于我自身狭隘的眼光,而很少能帮助到整个课程的运行。
作为一名助教,我感到惭愧。
不过我入职的初衷并非如此,而造成这部分落差的原因也在于课程组本学期的开发计划较大,而实际做到的事情却不多。一方面,尝试开发和CO一样的微信小助手,却没有实际使用;另一方面,尝试为冗余的数据库建立缓存机制,却最后不了了之。这学期系统组更多的时间似乎花在了Debug上,毕竟像OO后台这样一个巨大的系统,每学期所需要的维护成本绝不小。私以为,在下一届OO助教进行规划的时候,一定要考虑到后台可能出现的各种问题,将维护成本计入开发计划之中。很有可能明年开课之时,也有不少的系统组助教投身于Debug之中,而那些可以做的、可以优化的,则被慢慢搁置。
总而言之,我很荣幸能够成为一名OO助教。课程组内氛围融洽,师生关系好,大家齐心协力工作,这些都是造就如今OO大变革的必要元素。从一门让许多人都感到痛苦的互评课程,到如今的自动化测试、黑箱互测,这背后的变化,尤其要感谢助教和高阶助教们。虽然这学期我在课程组中的角色过于透明,也带来了不少遗憾,但却是一次珍贵的经历,有幸遇见这样的课程组和这样的大家。
2020年OO助教工作总结的更多相关文章
- OO助教工作总结
\(OO\)助教的工作结束了,在这一学期中,我主要负责对作业进行测试,对指导书进行检查,讨论区管理,部分数据构造,以及完成随班助教的工作. 测试 指导书检查 每次指导书公开前我都会先把指导书看 ...
- OO2020 助教工作总结
1 我的初衷 这一学期的OO助教工作是我一段宝贵的经历,在其中我学习了很多.见识了很多,收获满满.当时报名OO的初衷主要有三方面.首先,我想说OO是我所上过的最好的一门课之一,这门课有这一套从理论讲授 ...
- 2020北航OO第三单元总结
2020北航OO第三单元总结 本单元要求是根据JML规格完善代码,初看是一个简单的代码照搬实现的东西,但最后才发现由于CPU时间的限制,还考察了大量优化策略及数据结构中关于图的知识,是一次非常注重细节 ...
- 2020北航OO第二单元总结
2020北航OO第二单元总结 前言 本单元考察基于多线程的电梯调度问题,成功让我从一个多线程小白到了基本掌握了使用锁来控制线程安全的能力,收获颇多(充分体验了迷茫地de一个又一个死锁bug的痛苦). ...
- 2017-2018面向对象程序设计(Java)课程助教工作职责及分工
2017-2018面向对象程序设计(Java)课程助教工作职责及分工 一.研究生助教团队名单 张光辉,王玉环,牟巧玲,徐进 二.工作职责与要求 1) 针对所指导学习小组学生,批改课程实验作业每周一次, ...
- OO助教的退休感想
深夜失眠+刚赶完火车的胡言乱语,切莫当真,择日修改 一年前,我在学姐的怂恿鼓励下,加上了吴老师的微信,表达了想担任下学期的OO助教的想法.三天后,我到新主楼参加OO助教的面试,其实还是蛮紧张的,毕竟自 ...
- Java助教工作总结
很荣幸在步入在研究生之际,有机会能协助代老师完成面向对象程序设计(java)课程的教学工作.这也是我人生中第一次接触助教工作,好多东西不太清楚,也没经验,有什么做的不好的,还望老师同学及时指出. 上周 ...
- 2020北航OO第四单元总结
2020北航OO第四单元总结 一.本单元架构设计 本单元作业是实现一个UML图解析器,其中实现接口及主要框架课程组已经提供,只需要我们完成特定功能. 在第一次作业时,感到十分迷茫,不知道如何下手,最后 ...
- 第九周助教工作总结——NWNU李泓毅
1.助教博客链接: https://www.cnblogs.com/NWNU-LHY/ 2.作业要求博客链接: https://www.cnblogs.com/nwnu-daizh/p/1072688 ...
随机推荐
- 手把手教你 Docker Compose的安装和使用
一.Docker Compose是什么? Docker Compose是一个工具,用于定义和运行多容器应用程序的工具: Docker Compose通过yml文件定义多容器的docker应用: Doc ...
- 安全系列之:跨域资源共享CORS
目录 简介 CORS举例 CORS protocol HTTP request headers HTTP response headers 基本CORS Preflighted requests 带认 ...
- 前缀树及其Java实现
前缀树 基础知识 Trie树.又称之为单词查找树或者键树,是一种树形结构.应用于统计和排序大量的字符串.常被搜索引擎系统用于文本词频统计.它的优点:能够最大限度的减少无谓的字符串比较,查询效率比哈希表 ...
- 记录一次sql注入绕过
目标:http://www.xxxxx.net/temp.asp?ID=10359 通过 and 1=1 and 1=2 测试发现存在拦截 首先想到 and 空格 = 可能存在触发规则 一般遇到这种情 ...
- 关于AS下Gradle安装问题总结
在之前安装AS的随笔中简单描述了解决方法,但不够详细,在第二次创建项目时又遇到了gradle安装错误,通过在网上查找解决方法,发现方法比较多样,且描述不够仔细,本随笔将详细记录我在gradle安装中的 ...
- 【简单数据结构】并查集--洛谷 P1111
题目背景 AA地区在地震过后,连接所有村庄的公路都造成了损坏而无法通车.政府派人修复这些公路. 题目描述 给出A地区的村庄数NN,和公路数MM,公路是双向的.并告诉你每条公路的连着哪两个村庄,并告诉你 ...
- 自己实现Controller——标准型
标准Controller 上一篇通过一个简单的例子,编写了一个controller-manager,以及一个极简单的controller.从而对controller的开发有个最基本的认识,但是细心观察 ...
- 简单学习PHP中的层次性能分析器
在 PHP 中,我们需要进行调试的时候,一般都会使用 memory_get_usage() 看下内存的使用情况.但如果想看当前的脚本 CPU 的占用情况就没有什么现成的函数了.不过,PHP 也为我们提 ...
- Docker系列(16)- 容器数据卷
什么是容器数据卷 docker的理念回顾 将应用和环境打包成一个镜像 数据?如果数据都在容器中,那么我们容器删除,数据就会丢失!新增一个需求:数据可以持久化 MySQL,容器删了等于删库跑路!新增一个 ...
- sonar扫面代码总体流程