General Course Information
1.1 Course details
| Course code: | LLAW3301 |
| Course name: | Computing for Lawyers: Automation and Prediction |
| Programme offered under: | LLB Programme |
| Semester: | Second |
| Designated research course: | Not applicable |
| Specialization: | Not applicable |
| Prerequisites / Co-requisites: | No |
| Course offered to non-law students: | No |
| Credit point value: | 6 credits |
1.2 Course description
This module provides law students with no prior experience a conceptual primer on classical programming and machine learning through an introduction to the Python language. We drill down on core ideas, focusing not on training software developers, but on equipping future lawyers with the literacy to understand, evaluate, and leverage technology effectively in their own practice.
The module emphasizes hands-on, practical learning through interactive lectures, guided in-class coding exercises, and structured lab sessions. Programming topics to be covered include:
- Variables and Data: Variables are named containers storing data (text, numbers, true/false values, inputs and outputs). Data types define how the computer interprets values.
- Logic and Decisions: Boolean logic is a system of reasoning based on true/false values and operations like AND, OR, NOT. Programs make decisions using if/elif/else blocks based on conditions.
- Loops and Repetitions: Repeating actions with for (iterate over a known set) or while (repeat until a condition changes).
- Data Structures: Organizing data into collections such as lists and dictionaries
- Functions and Reusability: Abstraction hides complex details, exposing only essential features to simplify programming. Encapsulating reusable code into named functions with inputs (parameters) and outputs (return values).
- Machine Learning: Using algorithms to enable computers to learn patterns and make predictions from data. Evaluating the quality of predictions.
These topics culminate in an implementation of a simple machine learning model trained on real legal data.
Class schedule
| Date | Activity |
| Monday, 26 January 2026 | “Hello World!” |
| Monday, 2 February 2026 | Date Types, Expressions, Variables |
| Saturday, 28 February 2026* | Loops and Repetition |
| Monday, 2 March 2026 | Data Structures – Lists |
| Saturday, 7 March 2026* | Data Structures – Dictionaries |
| Monday, 23 March 2026 | Functions |
| Monday, 30 March 2026 | Machines Learning Basics |
| Monday, 13 April 2026 | Prediction |
| Monday, 20 April 2026 | Evaluation |
| Monday, 27 April 2026 | Review |
*Make-up sessions
1.3 Course teachers
| Name | E-mail address | Office | Consultation | |
| Course convenor | Benjamin Chen | benched@hku.hk | CCT 512 | By email |
Learning Outcomes
2.1 Course Learning Outcomes (CLOs) for this course
CLO 1 Explain core programming principles (variables, data types, loops, conditionals, functions) and computational logic.
CLO 2 Break down problems systematically and design simple algorithmic solutions.
CLO 3 Utilize the Python programming language to create small, functional scripts.
CLO 4 Articulate the distinction between classical programming and machine learning.
CLO 5 Understand basic principles of machine learning (train-test split, supervised and unsupervised learning, evaluation metrics).
CLO 6 Ideate how computer programmes can be used to automate or solve routine legal tasks.
2.2 LLB Programme Learning Outcomes (PLOs)
Please refer to the following link: https://course.law.hku.hk/llb-plo/
2.3 Programme Learning Outcomes to be achieved in this course
| PLO A | PLO B | PLO C | PLO D | PLO E | PLO F | |
| CLO 1 | ✓ | |||||
| CLO 2 | ✓ | |||||
| CLO 3 | ✓ | |||||
| CLO 4 | ✓ | |||||
| CLO 5 | ✓ | ✓ | ||||
| CLO 6 | ✓ | ✓ |
Assessment(s)
3.1 Assessment Summary
| Assessment task | Weighting | Feedback method* | Course learning outcomes |
| Class participation | 10% | 5 | 1, 2, 3, 4, 5 |
| In-class qizzes | 40% | 2 | 1, 2, 3, 4, 5 |
| Final exam | 50% | 1 | 1, 2, 3, 4, 5 |
| *Feedback method (to be determined by course teacher) | |
| 1 | A general course report to be disseminated through Moodle |
| 2 | Individual feedback to be disseminated by email / through Moodle |
| 3 | Individual review meeting upon appointment |
| 4 | Group review meeting |
| 5 | In-class verbal feedback |
3.2 Assessment Detail
To be advised by the course convenor(s).
3.3 Grading Criteria
Students will be assessed on a distinction/pass/fail basis.
Learning Activities
4.1 Learning Activity Plan
| Seminar: | 3 hours / week for 12 teaching weeks |
| Private study time: | 9.5 hours / week for 12 teaching weeks |
Remarks: the normative student study load per credit unit is 25 ± 5 hours (ie. 150 ± 30 hours for a 6-credit course), which includes all learning activities and experiences within and outside of classroom, and any assessment task and examinations and associated preparations.
4.2 Details of Learning Activities
To be advised by course convenor(s).
Learning Resources
5.1 Resources
| Reading materials: | Reading materials are posted on Moodle |
| Core reading list: | Eric Matthes, Python Crash Course: A Hands-On, Project-Based Introduction to Programming (2023) |
| Recommended reading list: | TBA |
5.2 Links
Please refer to the following link: http://www.law.hku.hk/course/learning-resources/