In a wide pan over medium heat, heat oil. Add potatoes and cook, turning as needed, until lightly browned and almost tender. Using a slotted spoon, remove from pan and drain on paper towels.
Remove excess oil except about 1 tablespoon. Add onions, ginger, and garlic and cook until limp softened.
Add chicken and cook, stirring occasionally, for about 5 to 7 minutes or until chicken starts to change color and juices run clear.
Add fish sauce and cook, stirring occasionally, for about 1 to 2 minutes.
Add water and bring to a boil, skimming scum that floats on top.
Lower heat, cover, and simmer for about 25 to 30 minutes or until chicken is cooked through.
Add potatoes and cook for about 3 to 5 minutes or until tender.
Add sugar and stir to combine. Season with salt and pepper to taste.
Continue to cook until liquid is reduced. Serve hot.