a tall building lit up at night

Microsoft Research Lab – Asia

CSEW’20 | How Should Online Computer Systems Courses Be Taught?

Share this page

Earlier this year, a novel coronavirus rendered online teaching a norm.

With “classroom” experiences poor, effective interactions between teachers and students difficult to maintain, and teaching quality easily affected by network conditions, online teaching has created many difficulties for teachers who are used to having a blackboard and a physical presence in the classroom. In particular, computer systems courses in colleges and universities come with even more difficulties, such as high demand on servers, hardware and technical issues, and uncertainty in the way to carry out experiments and tutorial courses.

To address this, the China Computer System Education Workshop hosted by MSRA launched its first online event in 2020 with the topic: “How Should Online Computer Systems Courses Be Taught?” The expectation was that this event would help teachers summarize, refine, and reflect on their experiences with online teaching through sharing and discussion, so as to maximize the benefits of China’s computer system education.

This is the first time in five years that the workshop has moved from an offline to online setting. More than 30 front-line computer systems educators from Tsinghua University, Peking University, Shanghai Jiao Tong University, University of Science and Technology of China, Nanjing University, Zhejiang University, Xi’an Jiaotong University, Wuhan University, Huazhong University of Science and Technology, and The Chinese University of Hong Kong, among other universities, contributed to an exciting discussion on teaching experiences.

How do you teach classes online? What methods can be applied to offline teaching in the future? The teachers shared their own experiences and generated many new and valuable ideas through their discussion.

To tackle the problem of students having difficulty concentrating in online lessons, teachers can divide lecture content into fragments, and they can set problems so that students are able to learn continuously. To deal with the lack of interaction between teachers and students, a sense of “classroom” can be strengthened through blackboard writing, and student feedback and communications can be improved by creating WeChat groups, establishing personal contact, issuing questionnaires, etc. Online teaching has also spurred unexpected joys. Experiments on the cloud, Online Judge and so on have shown very good results.

The workshop was hosted by Prof. Haibo Chen of Shanghai Jiao Tong University. Prof. Xiaoming Li of Peking University, Prof. Kang Chen of Tsinghua University, Prof. Yubin Xia of Shanghai Jiao Tong University, and Prof. Yanyan Jiang of Nanjing University led discussions on individual topics. Let’s take a look at their sharing of teaching computer systems courses online.

Set High Expectations and Set Up “Scaffolding”

Shared by: Prof. Xiaoming Li, Peking University

Prof. Xiaoming Li of Peking University offers two courses this semester. They are “Selection of Computing Problems in Society and Market,” open to undergraduates and postgraduates at Peking University, and “Computational Thinking Methods in Social Sciences,” open to freshmen at Guangzhou University. The courses consist of MOOCs, course materials, homework, and discussion.

In order to improve the effectiveness of online teaching, Prof. Li shared the five principles he has stringently (and deliberately) followed: set high expectations for students, help students build “scaffolding,” guide students to be problem-driven, understand students’ statuses, and improve work efficiency.

Using his Guangzhou University course as an example, Prof. Li relayed how to practice these principles in an actual teaching setting. “Computational Thinking Methods in Social Sciences” is an interdisciplinary course in social science and computer science. The Social Science students in the class have not taken courses such as data structure, but Prof. Li still set high expectations for them. The homework he assigned has high programming requirements. The first week’s homework was to make a calculation program suitable for the aggregation coefficient of network nodes.

High expectations require the support of “scaffolding.” Prof. Li does not require students with weak foundations to learn content with high logic requirements such as traversal and search, but rather reminds them that “all graph-related searches can be converted into the multiplication of adjacency matrices and vectors,” so that these students do not feel that the course requirements are out of reach.

Prof. Li believes that the ultimate goal of programming is to solve problems, so it is crucial to have “problem-driven” awareness. In order to gain a deeper and more comprehensive understanding of the actual situation of the students, Prof. Li divided up the students and provided feedback in groups, striving to reach a balance between work efficiency and communication effectiveness through a combination of individual and collective communications.

A month after class started, Prof. Li conducted a survey on learning experience and discovered that although students had different opinions on the format of online teaching, it was generally agreed that they had acquired a good deal of knowledge, that course materials and the information learned in class were instructive, and that the homework was challenging but could be completed. Prof.Li, so far, has achieved a certain level of success in his teaching goal of enabling students to form a richer understanding of the application of computational thinking in the social sciences and achieve a certain depth of experience.

Prof. Li emphasized that one of the most important aspects of online teaching during the pandemic is to allow those who have been conservative about online teaching to see that this is also an acceptable method of teaching. It is conceivable that the participation of the majority of front-line teachers in online teaching will promote its development in the future.

Active Launch of “Experiments on the cloud”

Shared by: Prof. Kang Chen of Tsinghua University

Prof. Kang Chen from Tsinghua University offers two courses: “Introduction to Distributed Systems” for graduate students and “Principles of Computer Composition” for undergraduates. Prof. Chen introduced his own experience in “moving” these two courses online, and focused on the highlights of the “Principles of Computer Composition” cloud experiment platform.

The course “Introduction to Distributed Systems” was forced to go online. Prof. Chen referred to the course handout framework of MIT’s course number 6.824 to organize the content and methods of his lectures, and referred to the video course by MIT professor Robert Morris to arrange his teaching process.

When teaching offline, Prof. Kang Chen can judge the participation level of students through their expressions and actions. For him, the lack of real-time feedback from students is a major difficulty in online teaching. Of course, online teaching also has its advantages. For example, the course can be recorded, which makes it convenient for students to check back on its contents at any time.

Currently, Prof. Chen ’s main teaching tools are his computers, iPad Pro, and Pencil. He uses Zoom on his iPad Pro to broadcast, and uses Pencil and Notability to share blackboard notes. Due to a concern for network problems during the live broadcast, Prof. Chen would record his lecture beforehand and pass it to the online classroom as a backup. During the actual class, he would give the lecture again and answer questions raised by students in real time, so as to emulate offline classroom experiences to the greatest extent.

Prof. Chen ’s main teaching tools

Whenever he sets up experimental work, Prof. Chen would be sure to give students ample time to finish, and would also encourage them to communicate and discuss among themselves in their WeChat groups.

For Prof. Chen, how to carry out the final examination is the biggest problem of the course. In past years, examinations have generally been closed-book, but because of the difficulty of invigilating online examinations, it may have to be changed to open-book this year.

Compared with the “Introduction to Distributed Systems” course, which was forced to go online, the process to go online for another course, “Principles of Computer Composition,” was more proactive. The experimentation requirements for this course are very high. The slogan of the course experiment is: “Fight for three weeks and build a computer.” Prof. Kang Chen and several other teachers (Prof. Weidong Liu, Prof. Shanshan Li and Yuxiang Zhang (Prof. Weidong Liu’s postgraduate student)) built a cloud experiment platform, and it has demonstrated that cloud experimenting produces even better results than offline experimenting because of the elimination of possible adverse effects stemming from the hardware experiment box, including hardware failure such as faulty soldering.

The cloud experiment platform is equipped with peripheral circuits and components of a computer, such as a network, serial port, and VGA unit. Unlike an ordinary experiment board, the experiment platform uses SRAM instead of DRAM as the main memory. Here, the hardware access timing sequence requirements for students is not that high, relatively speaking, and characteristics of von Neumann computers are retained. All that students have to do is create a CPU to drive the other hardware on the board.

Previously, during the experimentation part of the ” Principles of Computer Composition” course, the experiment board was directly provided to the students. However, due to various uncontrollable factors such as misalignment and damaged board hardware, even if the student’s code was correct, errors might still arise in the local results.

Since the cloud experiment platform has gone online, students have only needed to obtain the server address, account number, and password from the system administrator. They can log in to the remote experiment system through a browser and transfer the processor design files they have designed. The system automatically compiles and schedules the files to a free experimental board to run tests.

The background server platform

Students’ experiment data

Although the cloud experiment platform may have lost some of its “hardware” feel, this platform is more stable than offline platforms. As a next step, Prof. Chen’s teaching team is considering how to apply Online Judge to the hardware platform.

Changing From Long To Short, Grasping The Rhythm of The Course

Shared by: Prof. Yubin Xia of Shanghai Jiaotong University

How do you arrange the content of the course so that it can be shortened and still maintain continuity? Prof. Xia Yubin from Shanghai Jiaotong University shared his experience with “shortening the course” through content splitting and arrangement. He believes that online teaching undoubtedly loses some of the interactive experience, but since students can record videos and look back on it more conveniently, the requirements for lesson preparation and lectures have also become higher.

Studies have shown that the length of concentrated attention in an adult is only about 20 minutes. Therefore, Prof. Xia pointed out that it is not realistic for students to concentrate on listening to 90-minute online classes at home. To this end, he split the contents of the one and a half hour lectures into 6 to 12 segments, each lasting 7 to 15 minutes. This not only shortens lecture length and improves student concentration, but also speeds up the lecture pace and ensures continuity of the teaching content.

Prof. Xia used his lecture on Synchronization Performance under Multi-core and Multi-processor in his “Operating System” course for junior undergraduates as an example to share his own experience, which mainly consists of two aspects: one is to arrange knowledge points according to parallel or progressive relationships; the other is to further divide each knowledge point using problems as drivers, and finally to circle back to the problem itself, with time saved for discussion .

Prof. Xia said that in grasping the rhythm of the course, the most important thing is to figure out how to stimulate the interest of students through problem-driving. He noticed that once details are mentioned, the attention span of the students would be shortened, which creates ruptures in their knowledge gaining process, thus fragmenting their overall knowledge. Therefore, when it comes to refining the content, Prof. Xia would like to consciously remind everyone to guide students to think actively in a lively atmosphere while leading students to systematically build new knowledge points into their own knowledge network.

Magical Use of OJ to Help Online Teaching

Shared by: Prof. Yanyan Jiang of Nanjing University

Prof. Yanyan Jiang from Nanjing University introduced his experience in making hard demands on code organization through Online Judge in the online course, “Operating System.”

When he first started online teaching, Prof. Jiang encountered a series of challenges, such as not having a good teaching assistant team for support, having a large amount of course preparation work, and having students from different colleges with different foundations. At first, he also felt very unaccustomed to lecturing online, and his code demonstrations often encountered problems Through focusing and analyzing the causes of errors in his code presentation, Prof. Jiang gradually found his rhythm.

Prof. Jiang’s online teaching equipment

Prof. Jiang uses Bilibili as the live broadcast platform for his “Operating System” course, and students interact with him by posting comments to the live stream. After class, he also uploads the recorded video to Bilibili to help students review.

Prof. Jiang’s “Operating System” course on Bilibili

Because of the pandemic, many teachers worry that students will be overburdened and lose interest in learning, and so lessen their requirements. However, Prof. Jiang decided to do the opposite. By introducing Online Judge, he set a hard requirement for code organization, and sought to break away the mentality of a considerable number of students to merely muddle along and not try to fully understand things.

Online Judge brought along many unexpected surprises. Not only does it “force” students to carefully read the manual, it deepens people’s understanding of the basic concepts. Online Judge can also better help him deal with the problem of plagiarism. If a lot of code is pasted between two edits, it would be temporarily marked as plagiarized. Of course, if the student insists that he completed it independently, Prof. Jiang will also believe him/her unconditionally. But if he finds conclusive evidence of plagiarism in a follow-up inspection, the student in question would be severely punished.

Though compelled into it, everyone has seen through practice that online education is also workable. The sharing and collision of ideas between front-line teachers in the system workshop has also helped them to summarize their experiences and inspire each other.

There is still space for discussion on many issues, such as how to better conduct examinations and assessments, how to benefit offline teaching with the new education ideas, teaching methods and teaching approach stemming from online teaching in the future? Thoughts and explorations will continue, and we look forward to meeting again in the near future to generate more wisdom.

About the China Computer System Education Workshop

Under the advocacy of Turing Award winner John Hopcroft, the China Computer System Education Workshop has been held since 2016. By bringing together world-class computer system educators and computer system teachers and researchers at the forefront of Chinese colleges and universities, a set of cutting-edge practical computer system teaching content suitable for Chinese students has been summarized in the hopes of further improving computer system education and research in China.