LLAW3301

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/