20230703
如果链接失效,请提一个 issue。
一门课
MIT 6.004 Computation Structures
https://ocw.mit.edu/courses/6-004-computation-structures-spring-2017/pages/syllabus/
一项作业
https://nju-projectn.github.io/ics-pa-gitbook/ics2022/
一篇论文
Patrick Rein, Tom Beckmann, Leonard Geier, Toni Mattis, and Robert Hirschfeld. 2022. Competitive Debugging: Toward Contests Promoting Debugging as a Skill. In Proceedings of the 2022 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward! 2022). Association for Computing Machinery, New York, NY, USA, 172–184. https://doi.org/10.1145/3563835.3567665
阅读摘要
调试是软件开发的重要组成部分。研究或工业界已经提出了大量改善调试的工具和技术。然而,其中只有少数被广泛使用,调试也很少成为主要的教学主题。
为了把调试作为一种独立的技能来推广,我们提出"竞技调试"(Competitive Debugging):参与者竞争谁能最快或最全面修复一个故障。我们进一步提出了调试竞赛的形式,旨在吸引和吸引参与者,激励他们提高调试技能。在我们提议的形式中,参与者同时处理同一个故障,或观察同伴的调试过程。为了评估这一形式,我们开展了两次试运行和一次正式活动。我们发现,这一形式促使参与者反思自己的调试过程,让他们通过赛后对各方法的分组讨论来比较自己的调试方法与别人,并且对所有参与者来说都愉快且有吸引力。我们介绍了调试竞赛的形式、试运行评估,并为考虑举办竞技调试活动的人提供指导。
归根结底,我们的目标是为开发者提供提高调试技能的机会。我们的观察表明,竞技调试能够为训练调试技术、学习新工具提供这样的机会。