A basketball training system includes a server computer and a basketball training machine. The server computer executes a workout module that manages operation of a graphical user interface that presents a graphical representation of a portion of a basketball court and receives user inputs that define a workout program that includes selected ball delivery locations relative to the visual representation. The basketball training machine receives the workout program and delivers basketballs to the selected ball delivery locations.