The text is for instructors who want to use MATLAB to teach introductory programming concepts. Since many students struggle with applying the concepts that underlie good programming practice, Learning to Program with MATLAB: Building GUI Tools was designed upon the observation that student learning is enhanced if the students themselves build the GUI (graphical user interface) tool, construct the computational model, implement the visualization of results, and design the GUI. This text teaches the core concepts of computer programming - arrays, loops, functions, and basic data structures - using MATLAB. The chapter sequence covers text-based programs, then programs that produce graphics, building up to an emphasis on GUI tools. This progression unleashes the real power of MATLAB - creating visual expressions of the underlying mathematics of a problem or design.