请教如何设计软件比赛的软件环境?

2019-04-21 21:40:59 +08:00
 snable

请教有经验的朋友。几个院校想举办一个软件比赛,使用的语言主要是 Java 系。网络环境是局域网,不允许上外网,不允许自己携带存储开发设备。开发环境好限制,可以指定两种软件。问题是 Java 包使用习惯差别比较大,不好统一指定,用 maven 私服如何控制只能下载指定范围的包。另外开发环境的 maven 和 git 插件也不统一,有没有主流的能指定?比赛内容如果是 B/S 类型,前端脚本可能又需要指定,唉。

1713 次点击
所在节点    问与答
12 条回复
kyuuseiryuu
2019-04-22 01:01:18 +08:00
各种条件约束起来不就等于要求参赛者背代码了吗。干脆就所有东西都开放,从环境配置到编码打包发布全部由参赛者自己完成,这更能看得出来参赛者的能力。

到时候评分的维度更多不是更好?
mumbler
2019-04-22 02:41:40 +08:00
这是上机考试还是怎么?

既然比赛就应该参考各种黑客马拉松,自带设备,网络通畅,24 小时时限完成一个小作品,看谁做的作品好
snable
2019-04-22 08:14:18 +08:00
@kyuuseiryuu @mumbler 确实有二位说的这个不足,但是完全开放的话,担心有参赛组直接把半成品作品直接下载下来用。这种比赛的局限性无法衡量实际和实践,但只能在这个前提下做。谢谢二位。
IvanLi127
2019-04-22 09:05:49 +08:00
@snable 搞个命题?
plqws
2019-04-22 09:18:46 +08:00
@snable #3 全程录屏,赛后 review。比赛只要保障外网可用性就好,让参赛者自己配置。
snable
2019-04-22 10:09:55 +08:00
@plqws 这个时间成本太高,赛时和评奖时间都是有限的。
seabee
2019-04-22 10:27:49 +08:00
暂时了解两种:一种是限定软件版本和包,考限时完成题目。另一种是不限定版本和包,考的是创意。
seabee
2019-04-22 10:30:02 +08:00
有现成的竞赛系统的
kyuuseiryuu
2019-04-22 10:40:14 +08:00
@snable 题目是出过的题目自然会有别人的半成品。

广义上讲,做开发这活用别人写好的库也算是用别人的半成品啊。

能把别人的半成品拿来修修补补出一个功能完整作品也是一种能力。

办这比赛是考察学生的创意,也考察学校出题的创意。
GeruzoniAnsasu
2019-04-22 10:46:31 +08:00
黑客马拉松其实有很多作品确实是半成品拿去打比赛的

建议采用半命题的赛制。当初在校的时候有个华为搞的软件赛是每组实现一个玩德州扑克的 AI,评分的时候各组 AI 互打。像这种半命题形式我觉得比较合适。比如指定必须要用到的硬件设备(蓝牙摄像头什么的),指定交题对接的接口定义(比如游戏 AI 的操作接口),甚至还可以提供初始文件和 git 目录以便跟踪选手代码更改记录。



其实限制开发环境对开发赛来说根本就没啥意义,比赛的关键前提是公平性,而限不限制开发环境根本不影响公平,不如说限制环境提高了获取额外资源的门槛,反而可能带来公平性问题。

偷偷透露一下,线下赛,你想阻止选手连接外网是不可能的,不如说这种做法反而完全偏向了实力较强的队伍让起跑线更加不统一而已。线下赛有些选手带来的无线电设备甚至能隔着两栋楼组局域网,更别说连上外网了。
snable
2019-04-22 12:17:58 +08:00
@seabee 有具体点的参考吗
seabee
2019-04-22 19:48:41 +08:00
@snable 蓝桥杯有 java 组别的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/557306

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX