Although Id taken a lot of programming classes in college, I never fully appreciatedprogramming until I had a job that involved a lot of repetitive tasks. After amusingmyself by automating much of that job, I decided to return to school and study biol-ogy, which is when I took my first GIS course. I was instantly in love, and managed toconvince someone to give me a biology degree for writing an extension for ArcViewGIS . After finishing that up, I wentto work for the Remote Sensing/
graphic Information Systems Laboratory at UtahState University. One of my first projects involved some web mapping, and I soonbecame a big fan of the open source UMN M ap S erver software. That was my introduc-tion to open source
spatial software, including GDAL .Im fairly certain that I didnt appreciate the power of the GDAL/OGR library whenI first learned about it, but I came to my senses once I started using it in my C++ andC# code. In the College of Natural Resources, there werent many people around whowere interested in coding, but I did get to point people to the GDAL command-lineutilities on a regular basis. But then Esri introduced Python as the scripting languageof choice for A rc GIS , and things started to change. I dont think I had used Pythonmuch before then, but playing with
scripting made me realize how much I enjoyed working with Python, so naturally I had to startusing GDAL with it as well.More importantly for this book, my coworker John Lowry suggested that we team-teach a Python-for- GIS class. He taught students how to use Python with A rc GIS , and Itaught them about GDAL . The class turned out to be popular, so we taught it that wayfor another few years until John moved away. I took over the entire class and havebeen teaching it in various configurations ever since. Ive never bothered to take theclass material from the first two years off the web, however, which is how Manningfound me. They asked if I would write a book on using GDAL with Python. Id never had the desire to write a book, so it took a bit of persuasion to convince me to do it. Inthe end, it was my love for teaching that won me over. Ive discovered over the yearsthat I really enjoy teaching, mostly because I love watching students incorporate whattheyre learning into the rest of their work. This is especially true of graduate students,some of whom might not have completed their research in a timely manner if they hadnt learned how to write code. I know that these skills will continue to assistthem throughout their careers, and my hope is that this book will provide the samehelp to you, no matter if youre a student, professional, or a hobbyist. This is fun stuff,and I hope you enjoy it as much as I do!