Finely dice onion. Heat 1 tablespoon oil in a large frying pan over medium heat and cook onion, stirring, for 5 minutes.
Meanwhile place bread and milk in a large bowl, mash it together. Transfer onion to the bowl then add the mince, egg, ginger and coriander. Knead until the ingredients are well incorporated. Form 20 evenly-sized meatballs.
Heat 2 tablespoons oil in the same frying pan over medium heat and cook meatballs, in batches until browned on both sides. Remove each batch into a clean bowl before cooking the next - they do not need to be cooked through at this stage.
Peel and dice pineapple and carrot, slice celery sticks. In a jug mix the ketchup, ketjap manis, soy sauce, apple cider vinegar, ginger and water.
Return pan to high heat, add a tablespoon of olive oil, pineapple, carrot and celery. Cook for 5 minutes, stirring occasionally, until the pineapple is caramelised.
Return meatballs to the pan, add the sauce and stir. Reduce heat to medium, cover and cook for a further 10 minutes for the meatballs to cook through.
Serve on their own or with steamed rice (microwave steamed rice pouches are a nice shortcut here).