茶馆新人报道~
在改完综合实验的文档后突发奇想来茶馆水一水

事情的起因在 2023 春季学期,当时我担任了《计算机组成原理》这门课程的助教,和其他助教一起对这门课的实验进行了一点改革(比如说设计实验内容,更新实验文档什么的,2021 级计科的同学估计对我还有点印象)。也就借此契机与实验教学中心的老师混熟了。2023 年暑假,我和卢老师提及了关于数电实验以及组成原理实验的一些意见,于是萌生了来改革数电实验的想法。

数电实验在计科同学的心目中应该是风评比较一般的了,外院的同学可以参考评课社区的相关帖子(这个这个)来初步了解。于是在 2023 秋季学期,我和其他几名助教一起推倒先前的实验框架,整了个在线的实验文档。目前来看 2022 级计科同学的反响还行(?),但也想听一听更多的意见和建议。

在我看来,目前数电实验主要的问题在于:缺少一体化的实验环境(Vivado 和 FPGAOL 来回切来切去,而且 Vivado 也不是人人都能用的)、学分太少(1 学分的实验课属实膈应人)、引导还不够完善等。此外,实验教学中心的老师一直希望能让数电实验、组成原理、体系结构等硬件课程的实验形成一套体系,因此这两年也在不断改革(例如今年新开的计算系统综合实验)。因此在这里想和大家聊聊,计科比较理想的硬件实验教学内容或者框架可以是怎样的,或是从事硬件行业的师兄师姐们对刚刚接触硬件的同学们有没有什么学习建议。

不定期更新,指不定明年我又去担任组原助教了(

刚好春季学期教转码的朋友组原实验 感受了一下改革成果 我个人感觉比我当年做的时候清晰了很多 更能感受到硬件设计拼积木的那种感觉 但是最后的大实验和前面的跨度感觉还是有点大
数电实验的问题确实如楼主所说 感觉把部分模数理论课的学分移到实验课上会合理很多
体系结构我感觉应该把整个框架和计组整合 直接在计组完成的流水线cpu基础上开展实验 就不用重复造轮子了

以下只是我的个人体验,大概就是一个学不懂硬件人的牢骚吧
计算机科学是一个方向比较广的学科,不同的同学学习它也一定带有不同的目的。但是妮可 CS 的选修空间实在是太小了,除了物理以外,硬件与系统方向的必修课占了绝大多数。鄙人到现在也实在想不明白学那么多硬件课有什么用。倘若能把在 Verilog 上花费的所有时间都拿出来,学一些 ML 或者 OR 之类的东西或者数院基础课,现在科研里遇到的诸多数学障碍或许也能轻松一点;倘若能把硬件课的必修地位都取消了,或许我也不需要解释为什么一门专业核心课程拿了最低绩。或许晚些时候我可以整理一下我心目中针对我目前方向的最佳培养方案,但是最近事情有点多,先挖个坑。
说来妮可计算机学院的官方简称都是 CS (cs.ustc.edu.cn), Computer Science,但是只能授予工学学士。最近在忙申请,每次写到我是 Bachelor of Engineering in Computer Science Candidate 的时候都觉得非常滑稽。鄙人觉得硬件实验更像是电子工程或计算机工程的内容,与“计算机科学”相去甚远,实在不应有过高的必修要求。
LZ 提到数电实验学分太少。事实上 COD, OS, Compiler, CA 的实验学分都只有 1,它们的实验学分也理应被划为 LZ 所说的“太少”。尤其是 COD,鄙人记得每个星期都得花至少 20 个小时在实验上,当然不可否认的是鄙人 Verilog 水平一言难尽,而且做实验时有完美主义的强迫症。只不过这些课理论部分的学分占比比较多导致总学分比较多,自然实验设计者更容易假装所有的学分都是实验学分而为设计大容量的实验找借口。
综上,鄙人认为硬件(与系统相关)实验问题并不在于学分太少,而是从必修课角度来看压力过大学分过多,而从选修课角度来看内容过少。鄙人能想出最温和的建议是将理论部分与实验部分分离,理论部分是二等级必修,实验部分是选修,并为实验设置合适的学分和任务量。

    ExSpirdKyx 其实挺赞同的,计科直到大三才开始分专业的方向选修,大一大二完全是大家在一起一锅乱炖。因此在乱炖的时候设计不同层次的教学或许也是一种比较好的方法。之所以把数电实验单独拎出来是因为这是一门独立的实验课,和理论课的实验部分还是不太一样的。只不过科大对培养方案以及课程设置采取了十分保守的态度,希望我们能够做出一些改变吧。

    ExSpirdKyx 感觉这是科大计算机学院名称令人误导的问题,科大计算机学院包括华夏计算机科技英才班的培养方案主要都是想要向系统方向培养人才。层主说的ML这些AI方向的课程确实在计科学的比较少,出门右拐大数据学院非常合适。妮科以后也许可以把data science与computer science彻底分离。个人觉得作为computer science的学生工程能力还是要有的,毕竟叫science的学科都不science,然而科大cs学生的工程能力也一言难尽。

      楼主主要谈论的应该还是教学方向的改革吧. 但个人感觉, 追根溯源到为什么 "风评一般" 的问题上, 不能只从学习的角度考虑. 正如几位所说科大计科的方向东西混杂, 学生 (尤其是学习能力不突出的大多数) 很难对每一个方向的每一门必修课都专心致志地投入. In particular, 数电实验招牌上还是一门一学分的实验课, 会认真对待的学生比例又少一些, 所以难免每年都会有一些学不懂数电实验, 或者能学懂但不感兴趣所以不想投入太多的同学. 他们在这门课里给自己定位的主要任务往往是以一个还能看的绩点混过去, 具体地说可能并不在乎数电实验教得好不好, 要做什么, 只在乎尽快完成任务. 这类同学中的一些本可能在其它方向上找到自己的兴趣所在, 他们的声音同样值得关注, 但上述因素又使得他们这门课出来的绩点大概率不高, 从而倾向于不在评课社区这样的地方发表意见 (因为觉得没资格) , 即使发声可能也不受重视.
      这里不去评论作为一个计算机学生持有这种态度是否正确 (无论针对的课是数电实验还是什么) . 学校可以说 "我们的计算机系就是学系统"的, 从而论证这些必修课是该开并且该好好学的. 但实际上学生的不认同已经形成, 客观上没有学习意愿, 体验肯定不会好. 恐怕更深的改变得从培养方案乃至教学方针的转变做起.
      当然改革教学内容与教学方法, 肯定能够使得一些 "在原先的教学下不感兴趣" 的同学变得有兴趣学了, 所以也能使这类问题好转. 这学期我的舍友也在当数电实验助教 (楼主或许可以猜到是谁?) , 对新改革确实是评价颇高. 但另一方面我觉得也要考虑实验改革对上述 "混子同学" 是否会加重负担? 我本人在上数电实验的时候就完全学不进去, 遇到做不出的实验就去参考liuly大佬的github, 看懂了也能勉强应付过关. 如果改革在我这一级首次进行, 恐怕大二上折磨我的必修课又要多一门了 (当然这不是在反对改革) .
      总之如前所述, 导致这些问题的根源不在具体的教学内容, 所以肯定不能要求或指望单纯靠教学方, 尤其是学生的工作来彻底地改变. 嘛, 不过千里之行始于足下. 数电实验的改革, 以及选修课综合实验的开设都无疑算是令人振奋的开始.

      其实我自己也在试着凭个人能做的事情对计科目前必修课的一些不合理之处做些填补 (不过做的是离散数学的三门课) . 但越是和上过这三门课, 或是正在上课的同学及学弟交流, 就越感受到相当一部分人并不喜欢离散三部曲的学习, 也不关心对学的内容教的方法推动什么改变. 对于每一个具体的方向 (除了热门的方向) , 或许愿意深入学习的学生都是少数. 这也使我开始怀疑是否有必要考虑他们的诉求...

      tinykevin 仅从鄙人的角度出发,倒不是觉得 AI 方向的课少,而是完全没有时间去接触更多的方向,例如 AI。我个人对我学习课程的目标仅仅是浅层次了解即可,因为我觉得在数学功底扎实的情况下不需要通过大量的课程学习来入门计算机科研。我专业选修课选了运筹学、大数据算法、数理逻辑进阶、形式化方法、信安导论。虽然我不可能同时向这 4 个方向科研,但是我清楚我已经做好了向这些方向科研的准备,知道自己对每个方向大概多感兴趣,听相关讲座时也能简单明白讲座在说什么,能不能对我主要研究兴趣有启发,我没有后悔选修这些课。倘若没有诸硬件实验的折磨,我将这些时间拿来见识一下 AI 前沿,看看 AGT,或者打点信息论、实分析、拓扑学基础,或者直接上手实操科研,或许会对我个人更有帮助。
      楼歪得有点厉害了,都是个人的感受。我与少数计科大小领导交流过,动培养方案时不太可能的。LZ 也是单纯从一个助教的角度出发。所以作为必修课的助教(在做 COD 数电实验助教时),如果是希望在乎大多数人的感受,那我想唯一的方案就是尽可能放水减轻所有人的负担;作为选修课的助教(综合实验助教),我非常敬佩 LZ 的精神,十分抱歉不能从学术的角度在这方面提出建议。
      P.S. 之前看到今年 LXY 的算法基础被骂得很凶。我看了那些题,感觉助教非常用心,题也非常有意思。但我想作为必修课,算法基础要求不宜过高。非常希望学院能从算法基础上砍一截子下来放到选修课里。

        21 天 后

        ExSpirdKyx 要我说一千个人有一千个理想的培养方案,或许唯一的方式就是减少必修课但是不减少毕业学分要求吧。但这也太魔幻了,不太可能。

          Peanut_Tang 工学学士倒也无所谓了,毕竟CS在国外院校大部分也是在工学院下面的。但每次都要加个 Engineering 是不是也太魔怔了点。

            这段时间也和实验教学中心的老师们聊了聊,对于必修课(数电实验、组原实验)来说,增加学分的可能性比较小;对于选修课(体系结构实验、计算系统综合实验)来说,增加学分还是存在一定的可能的。明年的组原实验理论上也会进行大改,结合今年数电实验的情况来看,我们应该会在保持难度的基础上进一步丰富实验文档的内容,同时也会留下速通的通道(

            Peanut_Tang 工学学士本身不会有什么影响,而且在其他条件一样的情况下,计算机工学学士是妮可范围内最优学位之一
            歪个楼。我先假定你目标海外顶尖Ph.D.项目,我想你既然决心研究TCS就大概率有这个目标。为了这个目标,光有个学位肯定不够,还得发够文章 & 有海外强推。对TCS而言,这通常要求尽早打完基础,然后找到一段好的科研实习并在上面投入经历。倘若对标姚班计划,想要春研的话,你需要在大三上基本达到毕业要求,并且选修足够多与目标科研方向相关的课程,且已在校内有优秀的科研成果,来说服既没有招生需求又没有经费来招生(ML Theory等方向除外)的TCS老师去从ta从来没听说过的学校里招一个国际实习生

              说点什么吧...