A system, comprising: a stimulator device configured for implantation in a patient comprising a plurality of electrodes; and an external device configured to program the stimulator device with stimulation to be provided at one or more of the plurality of electrodes; characterized in that the external device is configured to: provide a Graphical User Interface, GUI, on the external device that allows the patient to select from a plurality of displayed stimulation modes (500, 502, 504, 506, 508, 510, 512, 514) to program stimulation provided by the one or more electrodes of the stimulator device, wherein at least one of the stimulation modes is indicative of a posture of the patient, an activity of the patient, or a power mode for the stimulator device, wherein the external device stores information indicative of a plurality of subsets of coordinates, wherein each coordinate in each subset comprises stimulation parameters derived for the patient to provide optimal stimulation for that patient, wherein each stimulation mode corresponds with one of the subsets of coordinates, wherein selection of one of the stimulation modes limits programming the stimulator device with coordinates that are within the corresponding subset of coordinates. a stimulator device configured for implantation in a patient comprising a plurality of electrodes; and an external device configured to program the stimulator device with stimulation to be provided at one or more of the plurality of electrodes; characterized in that the external device is configured to: provide a Graphical User Interface, GUI, on the external device that allows the patient to select from a plurality of displayed stimulation modes (500, 502, 504, 506, 508, 510, 512, 514) to program stimulation provided by the one or more electrodes of the stimulator device, wherein at least one of the stimulation modes is indicative of a posture of the patient, an activity of the patient, or a power mode for the stimulator device, wherein the external device stores information indicative of a plurality of subsets of coordinates, wherein each coordinate in each subset comprises stimulation parameters derived for the patient to provide optimal stimulation for that patient, wherein each stimulation mode corresponds with one of the subsets of coordinates, wherein selection of one of the stimulation modes limits programming the stimulator device with coordinates that are within the corresponding subset of coordinates. provide a Graphical User Interface, GUI, on the external device that allows the patient to select from a plurality of displayed stimulation modes (500, 502, 504, 506, 508, 510, 512, 514) to program stimulation provided by the one or more electrodes of the stimulator device, wherein at least one of the stimulation modes is indicative of a posture of the patient, an activity of the patient, or a power mode for the stimulator device, wherein the external device stores information indicative of a plurality of subsets of coordinates, wherein each coordinate in each subset comprises stimulation parameters derived for the patient to provide optimal stimulation for that patient, wherein each stimulation mode corresponds with one of the subsets of coordinates, wherein selection of one of the stimulation modes limits programming the stimulator device with coordinates that are within the corresponding subset of coordinates.