Step 1, naive impl of product list