HKBU Enews Eyes on HKBU
Jan 2012 | Issue 16
Updates
 
 

Professor Leung Yiu-wing: Solving teaching and learning problems for good outcomes

Contributed by:
Professor Leung Yiu-wing, Department of Computer Science
Recipient of the President’s Award for Outstanding Performance in Teaching in 2011

To achieve good teaching and learning outcomes, it is necessary but not sufficient to clearly write down and present your teaching material. I believe that three problems should be solved:

1. Most students have good learning motivation but some students not.
2. Most students have good learning capability but some students not.
3. Some students may swing between two extreme learning attitudes: over-confidence and under-confidence. When they can understand certain concepts at first glance, they may become over-confident (but in fact they may overlook the in-depth issues); otherwise, they may lack confidence (but in fact they could proceed with proper guidance).

In the following, I share how I tackle these three problems.

1. Teaching students with mixed learning motivations

A class may have students with mixed learning motivations. To teach the students with weak learning motivation, it is important to attract their attention and arouse their interest. For this purpose, I try to use many daily life analogies to illustrate the “dull” academic concepts. The following table gives several examples that I have been using in my classes.

Daily Life Analogy Academic Concept
Before crossing a road, we check whether there are any cars oncoming. If yes, we wait; otherwise, we cross the road. Before sending data, a computer checks whether there is any ongoing data transmission. If yes, it waits; otherwise, it sends its data.
If one person speaks Chinese and another person speaks English, how can they communicate? The solution is to use a translator who speaks both Chinese and English.  If one computer network uses one communication protocol and another computer network uses another communication protocol, how can they exchange data? The solution is to use a router which supports both communication protocols.
When shopping, if we have purchased too many items that cannot be put into one bag, we divide the items into two groups and put each group into a separate bag. In Internet data delivery, if an IP datagram is too large that it cannot be put into one packet, we divide it into two fragments and put each fragment into a separate packet.


2. Teaching students with mixed learning capabilities

A class may have students with mixed learning capabilities. To take care of all students, I use several complementary methods.

1. Progressively go from simple to complex: To explain a complex concept, I explain a simple case and then the general case. In this manner, it is easier for all students to learn the complex concept while the weak students could at least learn the core concept from the simple cases. For example, when I teach error detection methods for computer communication, I explain a simple case first (e.g. how to detect error for two numbers) and then the general case (i.e. how to detect error for any sequence of data).

2. Progressively go from concrete to abstract: Abstract concepts are difficult to understand. To teach abstract concepts, I explain some concrete cases and then the abstract concepts. In this manner, it is easier for all students to learn the abstract concepts while the weak students could at least learn the core ideas from the concrete cases. For example, when I teach an abstract theorem about number sequences for designing packet switches, I first explain a few concrete cases and then teach the abstract theorem.

3. Progressively go from high-level ideas to low-level details: A complex system may involve some core ideas and many minor details. In the learning process, some students may be confused by the minor details. To tackle this learning problem, I explain a complex system in a hierarchical manner – explain the high-level ideas and then its low-level details. In this manner, most students could learn the whole complex system while the weak students could at least grasp the core ideas. For example, when I teach the Google cluster architecture, I explain the system at the cluster level, then the system at the functional level within each cluster, and then the details within each cluster.

4. Guidance for further learning: Some capable students may want to learn beyond the course materials. With proper guidance, they can go ahead and learn further. I post some pointers on the course website so that students can access material for further learning . I also list some open-ended questions which could prompt students to explore further.

3. Teaching students with extreme learning attitudes

Some students may swing between two extreme learning attitudes: over-confidence and under-confidence.

When some students are able to understand certain concepts at first glance, they may think that these concepts are "easy" and then overlook the in-depth issues. To tackle this problem, I prepare various tutorial problems by which students are led to consider some in-depth issues. For example, after teaching a solution to a problem, I would discuss the following questions: i) What are the advantages and disadvantages of this solution? ii) Can this solution solve other similar problems? iii) How can this solution be further improved?

When some students encounter learning problems, they may become under-confident and hesitate to go ahead. To help students gain confidence, I prepare some problems or mini-projects in which students are guided to do some meaningful work. For example, in a recent group project, students were guided to design and implement a search engine. After going through the whole process, the students gained confidence as they had done some meaningful and important work.