|Other Retailer||Price Checked Time||Their Price in AUD||Our Price|
|Amazon UK||15 days ago||172.6||$129.00||You save $43.60|
|Book Depository US||2 days ago||144.61||$129.00||You save $15.61|
Foreword xxvii Preface to Third Edition xxix Preface to First Edition xxxv Introduction xliii PART I Basic Concepts of GIS 1 CHAPTER 1 Some Concepts That Underpin GIS 3 You Ask: ?What Is GIS About?? 3 And So You Ask Again: ?What Is GIS About?? 4 EXERCISE 1-1 (PROJECT) Finding a Geographic Site by Manual Means 5 More of What GIS Is About 10 Next Steps: Seemingly Independent Things You Need To Know 11 Determining Where Something Is: Coordinate Systems 12 Determining Where Something Is: Latitude and Longitude 14 Geodesy, Coordinate Systems, Geographic Projections, and Scale 15 Projected Coordinate Systems 15 Geographic vs. Projected Coordinates: A Comparison 17 Two Projected Coordinate Systems: UTM and State Plane 17 Physical Dimensionality 20 Global Positioning Systems 22 Remote Sensing 22 Relational Databases 23 Searching (and Indexing) in General 29 Another Definition of GIS 30 Computer Software: In General 32 STEP-BY-STEP 35 EXERCISE 1-2 (PROJECT) Developing a Fast Facts File for the Information You Learn 35 Understanding the File Structure for the Exercises 36 EXERCISE 1-3 (MINOR PROJECT) Getting Set Up with ArcGIS 37 EXERCISE 1-4 (PROJECT) Looking at the ArcCatalog Program 38 Anatomy of the ArcCatalog Window 39 Setting Some Options 40 The Catalog Tree 42 Connecting to a Folder 44 The Toolbars and the Status Bar 45 An Optional Step 49 Exploring Basic GIS Data Storage Models 50 EXERCISE 1-5 (MAJOR PROJECT) Exploring Data with ArcCatalog?Fire Hydrants in a Village 51 Copying Data over to Your Personal Folder 51 Examining the Table 54 Deriving Information from the Table 55 Sorting the Records 55 Finding Values in a Table 56 Identifying Geographic Features and Coordinates 57 Looking at GeoGraphics 58 A First Look at Metadata 59 Using ArcCatalog to Place Data in ArcMap 61 EXERCISE 1-6 (PROJECT) A Look at Some Spatial Data for Finding a Site for the Wildcat Boat Facility 63 Using the Area on the Disk for Your Own Work 64 Copying Data over to Your Personal IGIS Folder 64 Searching for GIS Data 65 Exploring Soils 70 But Something Is Missing 71 Is the Newly Found Data Applicable? 73 Making a Personal Geodatabase Feature Class from a Coverage 74 Looking at the Landcover Personal Geodatabase Feature Class 75 Further Examining the Wildcat Boat Facility Area Data Sets 76 EXERCISE 1-7 (PROJECT) Looking at Wildcat Boat Data with ArcMap 79 Seeing the Results of the Join 82 EXERCISE 1-8 (PROJECT) Understanding the ArcGIS Help System 82 A Button for Instant Help: What?s This? (for ArcGIS Desktop version 10.0 only) 82 Getting Instant Help for a Tool or Command (for ArcGIS Desktop version 10.1) 83 The Help System and Documentation 83 ArcGIS Help across the Internet 84 EXERCISE 1-9 (DULL STUFF) Using ArcCatalog for Mundane Operations 85 EXERCISE 1-10 (REVIEW) Checking, Updating, and Organizing Your Fast Facts File 86 What?s Next? 88 CHAPTER 2 Characteristics and Examples of Spatial Data 89 The Original Form of Spatial Data: Maps 89 Moving Spatial Data from Maps to Computers: Forces for Change 90 Spatial Data 94 Limiting the Scope 95 Spatial Data for Decision Making 95 Sets of Spatial Data: The Database 95 Spatial Databases: Inherent Diffi culties 96 Information Systems 101 Uses for a Geographic Information System 103 STEP-BY-STEP 113 EXERCISE 2-1 (MOSTLY OUTSIDE) Appreciating Geographic Space and Spatial Data 113 EXERCISE 2-2 (SETUP) ArcMap Toolbar Examination and Review 114 EXERCISE 2-3 (MAJOR PROJECT) Exploring Different Types of Geographic Data 117 The Basic Difference between ArcCatalog and ArcMap 117 Exploring Data from the NAVSTAR Global Positioning System (GPS) 117 Preliminaries 118 Seeing the GPS File in ArcMap 118 Looking at the GPS Track in the Context of a Variety of GIS Data 122 A Potpourri of Types of Geographic Data 122 Displaying Layers from Vector-Based Datasets 125 Housekeeping: Saving and Restoring a Map 127 Selecting: Both Map Data and Attribute Data 128 Using the Measure Tool and the Identify Tool 131 County Boundaries and Polygons 131 TIGER/Line Files 133 The Table of Contents: Display vs. Source vs. Selection 134 EXERCISE 2-4 (MAJOR PROJECT) A Look at Raster Data 136 Digital Raster Graphics and Cell-Based Files 136 A Look (Optional) at How DRG Color Values Are Put Together 140 Experimenting with Different Ways of Seeing Data 141 Digital Orthophotos 143 More TIGER/Line Files 145 Another Tie between Attributes and Geographics 148 More Housekeeping: Shutting Down and Restarting ArcMap 149 Digital Elevation Model Files 149 Comparing the DEM and the DRG 153 Contour Line Files 153 EXERCISE 2-5 (PROJECT) Triangulated Irregular Networks 155 TINs are Three-Dimensional Datasets 158 Elevation Based on Massive Sets of Data: The Esri Terrain 160 EXERCISE 2-6 (PROJECT) Geodatasets of Soils, Rocks, and Land Cover 161 The Summarizing Procedure 162 Some Geological Data 164 Rasters of Land Cover Data 165 You Are Not Alone (Assuming you have an Internet connection) 167 Next Steps on Your Own 168 EXERCISE 2-7 (REVIEW) Checking, Updating, and Organizing Your Fast Facts File 168 The Next Chapter 171 CHAPTER 3 Products of a GIS: Maps and Other Information 173 GIS and Cartography?Compatibility? 173 Products of a Geographic Information System 174 Overall Requirements for Utility 174 Classification of GIS Products 175 Documenting Products 177 Thoughts on Different Types of Products 178 Don?t Ignore Character-Based Information 178 Don?t Hesitate to Sort Information 178 Consider Hard Copy 179 Consider Balance in Product Content 179 Elements of Product Design 179 Units, Projection, and Scale 180 Thoughts on Resolution and Scale 180 Making Sure There Is a Base Map 180 Measure of Quality Assurance 181 The Decision Maker?Product Interface 181 In Summary 182 STEP-BY-STEP 183 The Data View and the Layout View 183 EXERCISE 3-1 (WARM-UP) Templates 184 EXERCISE 3-2 (PROJECT) Templates That Contain Data 186 Controlling Your View of the Map: Zooming 188 Understanding the Panning and Other Controls 189 Adding Other Map Elements 190 EXERCISE 3-3 (MAJOR PROJECT) Data Frames 192 Adding Data to Data Frames 193 A Summary of the Graphic Indicators 195 Tinkering with the Map?Scale Bars 195 Legends 196 EXERCISE 3-4 (MINI PROJECT) Looking at the Plethora of Mapmaking Tools and Options 198 EXERCISE 3-5 (MAJOR PROJECT) Making a Map of the Wildcat Boat Datasets 201 EXERCISE 3-6 (MAJOR PROJECT) Publishing Maps on the Internet 201 EXERCISE 3-7 (MAJOR PROJECT) Enhancing Communication: Styles, Layer Files, Layer Packages, Reports, Charts, and Graphics 206 Layer Files 206 Layer Packages 209 Styles 210 Adding and Using a Style 211 Reports 212 Charts and Graphs 216 Graphics 218 Making Graphics out of Geographic Features 223 EXERCISE 3-8 Checking, Updating, and Organizing Your Fast Facts File 224 CHAPTER 4 Structures for Storing Geographic Data 227 Why Is Spatial Data Analysis So Hard? 227 How the Computer Aids Analyzing Spatial Data 228 Complexity of Spatial Data 228 Structures for Spatial Data 229 Storage Paradigms for Areal Data 230 Fundamental Bases of Geographic Data Models 230 The Raster Data Model 232 Vector Data Model 234 A Multiplicity of ?Storadigms? 235 Vector-Based Geographic Datasets?Logical Construction 235 Zero-Dimensional Entities in a Two-Dimensional Field: Points 236 One-Dimensional Entities in a Two-Dimensional Field: Lines 237 Two-Dimensional Entities in a Two-Dimensional Field: Polygons 238 Three-Dimensional Entities in a Three-Dimensional Field: Triangles and Multipatches 239 Specific Esri Spatial Vector Data Storage Mechanisms 240 The Geodatabase Data Structure 240 Geodatabase Software 240 Polygons within Polygons?Perimeter and Area Calculations 241 Geodatabases?Layout in the Computer 243 Geodatabases?Logical Construction 243 Geodatabases?Feature Shape 244 Nested Polygons in Geodatabases 245 Geodatabases and Attributes 245 Objects?First Acquaintance 247 The Shapefile Data Structure 247 Shapefiles?Layout in the Computer 248 Summarizing Vector Dataset Features 249 Summary of Logical Structures of Vector-Based GIS Datasets 249 Raster-Based Geographic Data Sets?Logical Construction 250 Raster-Based Geographic Data Sets?Layout in the Computer 251 TINs 253 TIN-Based Geographic Data Sets?Layout in the Computer 254 Spatial Reference 255 STEP-BY-STEP 257 EXERCISE 4-1 (WARM-UP) Meet ArcToolbox 257 EXERCISE 4-2 (WARM-UP) A Look at Some Trivial Personal Geodatabase Feature Classes 259 More Help 260 EXERCISE 4-3 (MINOR PROJECT) Adding Tools and Toolboxes to your Toolset 262 EXERCISE 4-4 (MINOR PROJECT) Making a Personal Geodatabase Feature Class Named TextToFeature 263 Specifi cation of your Input Text File for the ?Create Features from Text File? Tool 263 Labeling Features 266 Making Polygons from Lines 268 Areas and Perimeters Examined 269 Labeling Features with Selected Attributes 269 EXERCISE 4-5 (QUICK QUIZ) Areas and Perimeters 270 EXERCISE 4-6 (PROJECT) Making a File Geodatabase Feature Class for Foozit_Court 271 EXERCISE 4-7 (EXPLORATION) Understanding Some Things That Don?t Look Right 272 Computers and Inexact Computation 274 EXERCISE 4-8 (PROJECT) Geodatabase Topology 276 Creating a New Topology 277 Specifying Which Feature Moves When Features Are Adjusted: Rank 277 Topology Rules 278 Validating Topology 279 A Warning: Changes Made through Topology Are Permanent 281 EXERCISE 4-9 (REVIEW) Checking, Updating, and Organizing Your Fast Facts File 281 CHAPTER 5 Geographic and Attribute Data: Selection, Input, and Editing 283 Concerns about Finding and Collecting Data 283 Looking for Data on the Internet 284 Steps in Developing the Database 284 GPS and GIS 289 Anatomy of the Acronym: GPS 291 What Time Is It? 294 STEP-BY-STEP 295 EXERCISE 5-1 (WARM-UP) Looking at Areal Representations of the Real World 295 Looking at Reference Systems 296 Looking at Coordinate Systems 298 Using the Reference System to Discover the Boundary Coordinates of a State Plane Zone 299 Primary Lesson 301 EXERCISE 5-2 (PROJECT) Look at Geographic Data on the web 301 EXERCISE 5-3 (PROJECT) Digitizing and Transforming 302 A Plan for Digitizing and Transforming 302 Getting Started 303 Loading an Image File as a Layer in ArcMap 303 Loading the New, Blank Shapefi le into ArcMap 305 Adding Line Features to a Shapefi le by Using the Editing Facility in ArcMap 305 Converting a Shapefi le to a Geodatabse Feature Class and Giving It Real-World Coordinates 309 Converting the Shapefi le to a Geodatabase Feature Class 310 Moving the Foozit Court Feature Class into the Real World 310 EXERCISE 5-4 (PROJECT) Digitizing Directly into a Real-World Coordinate System in a Geodatabase 314 Preliminaries 314 Making the Feature Class That Will Be the Object of the Digitization 315 Georeferencing 315 Moving the Sketch to UTM Zone 2 317 Digitizing the Line Boundaries of the Islands 318 Making Polygons of the Digitized Lines 318 Making Multipart Polygons 319 Five islands divided by county and agency 319 Merging Multipart Polygons 320 EXERCISE 5-5 (WARM-UP) Digitizing Geodatabase Polygons and Exploring Topology 321 Making Copies of the Feature Class 322 Using ?Clip? to Remove Overlaps from the Feature Class 323 Using Topology to Remove Overlaps from the Feature Class 324 EXERCISE 5-6 (PROJECT) Learning Some Editor Fundamentals 326 The Concept of the Edit Sketch 326 Making Sketches with Snapping 326 Experimenting with Editing Polygons 329 Experimenting with Editor?s Union 329 Experimenting with the Editor?s Intersect 330 Experimenting with the Editor?s Buffer Capabilities 330 Using Undo, Redo, Copy, and Cut 330 Working with Line Editing Again 331 EXERCISE 5-7 (FOLLOW-ON) Adding the Sixth Island 331 Creating a 3-D Feature 333 EXERCISE 5-8 (PROJECT) Obtaining Field Data and Joining Tables 335 Organization 336 Environment and Measurement (Spatial Data) 336 Measurements (Non-spatial Data) 337 Recording Data 337 Team Assignments 337 Undertaking the Data Entry Process 338 Making a Table That Contains the Coordinate Data 338 Making a Table That Contains the Student Data 339 Populating the Student_Info Table with Data 340 Joining the Two Tables to Make a Single Table 340 Seeing the Results of the Join 340 EXERCISE 5-9 (REVIEW) Checking, Updating, and Organizing Your Fast Facts File 342 PART II Spatial Analysis and Synthesis with GIS 345 CHAPTER 6 Analysis of GIS Data by Simple Examination 347 Information 347 Computer Hardware?What a Computer Does 349 Continuous and Discrete Phenomena 352 Some Implications of Discrete Representation for GIS 355 Scientific Notation, Numerical Significance, Accuracy, and Precision 356 Precision vs. Accuracy 356 Basic Statistics 359 Putting Values into Classes 361 Measurement Scales 361 STEP-BY-STEP 363 EXERCISE 6-1 (PROJECT) Reviewing and Learning More of ArcMap 363 Examining the Toolbars 364 Pointing at Records 365 Two Windows Are Available for Selecting 365 Selecting Records (and, Thereby, Features) 366 Looking at the Other Capabilities of the Options Menu 368 Selecting Features (and, Thereby, Records) 368 Quick Selection of Features 368 Selecting by Location 369 Reviewing and Understanding Actions on the Table of Contents 370 Layers and the Data Frames 370 Changing Layer Properties 371 EXERCISE 6-2 (PROJECT) Categorization and Symbolization 375 Thinking about Maps Again 375 Classification (or Categorization) and Symbolization 375 User Selection of Classes 377 A More Careful Look at Equal Intervals 379 Defined Interval 379 Quantiles 379 Standard Deviation 379 Natural Breaks 380 Normalization 381 Using Charts and Graphs 381 Making a Layout 382 EXERCISE 6-3 (SHORT PROJECT) Comparing Data Sets: Medically Underserved Areas (MUAs) and Health Professional Shortage Areas (HPSAs) 382 EXERCISE 6-4 (MAJOR PROJECT) Combining Demographic and Geographic Data 386 Obtaining Data from the U.S. Bureau of the Census 387 Converting the Census Data Spreadsheet to dBASEIV Format 388 Using TIGER-Based Street and Block Shapefiles from Esri 390 Assessing What We Have and What We Need to Solve the Problem 394 Converting the Relevant Files to Cartesian Coordinates 395 Finally 395 EXERCISE 6-5 Determining Proximity of Points to Lines and Other Points 397 EXERCISE 6-6 (REVIEW) Checking, Updating, and Organizing Your Fast Facts File 399 CHAPTER 7 Creating Spatial Feature Classes Based on Proximity, Overlay, and Attributes 403 Generating Features Based on Proximity: Buffering 403 Generating Features by Overlaying 405 Overlaying with Line and Point Feature Classes 407 Spatial Joins in General 409 Deriving Feature Classes by Selecting Attributes: Extraction 410 STEP-BY-STEP 413 EXERCISE 7-1 (WARM-UP) Making Trivial Buffers around a Trivial Feature Class 413 EXERCISE 7-2 (PROJECT) Exploring FEATURE CLASS Buffers with the Wildcat Boat Data 415 Using ArcToolbox to Make Buffer Zones around the Roads 416 Variable-Width Buffers 417 EXERCISE 7-3 (PROJECT) Manipulate Polygon Feature Classes with Union and Extract 419 Make a New Feature Class from a Subset of Polygons: Extract 423 More Complex Queries?And?s and Or?s 425 Other Polygon Spatial Joins: Intersect and Identity 425 EXERCISE 7-4 (PROJECT) Use Overlay and Extract with Trivial Point and Line Feature Classes 426 EXERCISE 7-5 (PROJECT) 429 Using Buffer and Overlay Together with Geodatabases 429 The Getrich Saga 429 Deriving Information by Combining Tables 431 Overlaying the Feature Classes 433 EXERCISE 7-6 (PROJECT) Building a Model of the Getrich Project Solution 435 Create a Python Script from the Gold Model 439 Modify the Python Script from the Gold Model 440 Execute the Python Script 440 EXERCISE 7-7 (MINOR PROJECT) Making Buffers for Solving the Wildcat Boat Problem 441 EXERCISE 7-8 (PROJECT) Finding a Site for the Wildcat Boat Facility 442 EXERCISE 7-9 (PROJECT, OPTIONAL) Solving a Revised Wildcat Boat Problem 446 Understanding Dissolve 446 Making New Sites that Including the COST_HA Field 447 Considering the Site Eccentricity Criterion 448 Making a Model of the Wildcat Boat Solution 450 EXERCISE 7-11 (REVIEW) Checking, Updating, and Organizing Your Fast Facts File 452 CHAPTER 8 Spatial Analysis Based on Raster Data Processing 453 A Really Different Processing Paradigm 453 Facts about Rasters 454 Coordinate Space 455 Rasters with Integer Cell Values 456 Rasters with Floating-Point Values 459 What Is Raster Storage and Processing Good For? 459 Rasters and Features 461 Rasters: Input, Computation, and Output 461 Where Raster Processing Shines: Cost Incurred Traveling over a Distance 462 Proximity Calculation with Rasters 462 Human Activity, Cost, and Distance 463 Euclidean Distances on the Raster 463 Euclidean Distance and the Spatial Analyst 465 Proving Pythagoras Right 465 Finding the Closest of Multiple Source Cells 466 Excluding Distances beyond a Certain Threshold 467 Other Factors That Infl uence Cost 467 The Cost Distance Mechanism 468 The Cost Distance Calculation 468 Path Calculation in Euclidean Distance and Cost Distance 469 Understanding How Total Costs Are Calculated 470 Getting More Information: Paths and Allocations 471 Direction and Allocation Rasters for Euclidean Distance 471 Direction and Allocation Rasters for Cost Distance 471 A Major Application of Raster Processing: Hydrology 471 Basic Surface Hydrology 473 Basic Surface Hydrology Concepts 474 Calculating Flow Direction 474 The Ultimate Destination of Water Is Off the Raster Area 475 Flow Accumulation: Drainage Delineation and Rainfall Volume 476 Nonuniform Rainfall 477 Calculating the Length of a Potential Linear Water Body 478 Assigning Identities to Streams 479 Vector vs. Raster Representation 480 Assigning Orders to Stream Links 480 Watersheds and Pour Points 481 STEP-BY-STEP 483 EXERCISE 8-1 (PROJECT) Basic Raster Principles and Operations 483 The Raster Calculator?Integer Rasters 486 Arithmetic Calculation 487 Boolean Operations 488 Floating-Point Rasters 489 EXERCISE 8-2 (PROJECT) Solving the Original Wildcat Boat Problem with Rasters 491 Setting the General and Raster Environment 491 Converting Features to Rasters 492 Creating Rasters with Linear Features 496 Buffering with Spatial Analyst (Maybe) 497 Buffering?Plan B 498 Reclassifying the Data 498 Adding the Rasters with the Raster Calculator 501 Converting Zones to Regions to Find Individual Sites 502 EXERCISE 8-3 (PROJECT) Solving a Wildcat Boat Problem with Different Requirements 503 EXERCISE 8-4 (DEMONSTRATION) Making Surfaces with IDW, Spline, Trend, Nearest Neighbor, and Kriging 506 Points and Density 509 Thiessen, Dirichlet, Voronoi (and, of course, Decartes) 509 EXERCISE 8-5 (PROJECT) Rasters: Distance and Proximity 511 Making a Raster Showing Straight-Line Distances to a Single Place 511 Examining Many Source Cells and the Capping Distance 514 Developing a Raster with Cost Distance 516 Creating Direction and Allocation Rasters 518 Using Cost Distance to Make Direction and Allocation Rasters 519 Calculating a Least-Cost Path from ?A? to ?B? 522 EXERCISE 8-6 (PROJECT) Putting the Tools Together: Find a Site for a Regional Park 523 Setting Things Up 524 Preparing to Create a Cost Surface 526 Building a Cost Surface 527 Improving the Understandability of the Map 529 EXERCISE 8-7 (PROJECT) Watershed Analysis 529 Examining the Surface with Various Spatial Analyst and 3D Tools 530 Determining the Stream Channels 533 Calculating Stream Order 533 Numbering Each Stream Individually 534 Identifying Basins 534 Finding Pollution Culprits 534 EXERCISE 8-8 (REVIEW) Checking, Updating, and Organizing Your Fast Facts File 535 CHAPTER 9 Other Dimensions, Other Tools, Other Solutions 537 Two Different Third Dimensions: The Temporal and the Vertical Spatial 537 THE THIRD SPATIAL DIMENSION: OVERVIEW 539 3-D: 2-D (Spatial) Plus 1-D (Spatial) 539 ArcScene 539 ArcGlobe 540 THE THIRD SPATIAL DIMENSION: STEP-BY-STEP 541 An (Almost) New Software Package: ArcScene 541 EXERCISE 9-1 (PROJECT) Experimenting with 3-D 542 ArcScene 542 What?s 3-D and What?s Not 543 Viewing 3-D Data with Animation 546 Making a TIN and Other 3-D Representations of Elevation 549 Creating DEM fi les with Kriging 551 Creating a Map of Contour Lines 553 Two-and-a-Half Dimensions (2.5-D): Calculating Volumes 553 Calculating a Volume with ArcGIS 554 Other Neat Stuff You Can Do with 3D Analyst: Viewshed and Hillshade 556 A Closer Look at ArcGlobe and Adding Data to It 558 Making a Terrain 560 THE TIME DIMENSION: OVERVIEW 567 3-D: 2-D (Spatial) Plus 1-D (Temporal) 567 THE TIME DIMENSION: STEP-BY-STEP 569 EXERCISE 9-2 (PROJECT) Looking at Infrastructure Changes Occurring over Time 569 Sliding through Time?Seeing Changes in Features at Intervals 573 ADDRESS GEOCODING: OVERVIEW 575 A Second Fundamental Way of Defining Location 575 TIGER/Line Files 576 Precision of the Geographic Coordinates in TIGER Files 578 Address Locators 579 ADDRESS GEOCODING: STEP-BY-STEP 581 EXERCISE 9-3 (PROJECT) Experimenting with Addresses and Coordinates 581 Finding the Geographic Position of an Address ?Manually? 582 Making an Address Locator 584 Finding the Geographic Position of an Address ?Automatically? 584 TIGER Files and ZIP Codes 585 More to Know?More Information Available 586 ANALYSIS OF NETWORKS: OVERVIEW 587 ANALYSIS OF NETWORKS: STEP-BY-STEP 589 EXERCISE 9-4 (PROJECT) Experimenting with Routes and Allocations 589 Finding the Shortest Route to a Facility 593 Allocating Territories to Facilities 595 LINEAR REFERENCING: OVERVIEW 597 LINEAR REFERENCING: STEP-BY-STEP 599 EXERCISE 9-5 (PROJECT) Experimenting within Linear Features 599 Intersecting Route Events 603 What?s Not Covered Here 605 EXERCISE 9-6 (REVIEW) Checking, Updating, and Organizing Your Fast Facts File 607 Afterword: From Systems to Science by Michael Goodchild 609 Index 611
MICHAEL KENNEDY, AICP, is an Associate Professor Emeritus of Geography at the University of Kentucky. He is the author of The Global Positioning System and ArcGIS, Third Edition , as well as books on Fortran, Pascal, and PL/One. He has presented papers on GIS analysis quality control at Esri User Conferences and is a member of the American Institute of Certified Planners, the Association of American Geographers, and the American Planning Association.