Introduction to GEE
Google Earth Engine, and Microsoft Planetary Computer, are supercomputers designed specifically to display, process, and analyze spatial data. Each of these systems contain petabytes of information that can be accessed with anyone holding an account, a web browser, and access to the internet. Unlike a typical graphical interface, such as ArcGIS Pro or QGIS installed directly on your machine, these systems are accessed through the cloud. To avoid the extra baggage of an intuitive interface and increase the flexibility for any number of applications, these systems require you to code your workflow. We don’t actually call it coding, rather it’s referred to as scripting.
Learning to script is very similar to learning a new language. There are rules you must follow and syntax that must be obeyed. If you’ve ever learned a new language, you may have found it initially difficult to communicate. However, as you practice, you find your abilities and confidence increasing. As a side benefit, once you’ve learned one language, learning new, related languages is easier. For example, a person that knows Spanish will find it easy to pick up Portuguese or Italian. Once you learn to script in these interfaces, you’ll find scripting in other, related, programming languages easier.
In this text, we’ll focus on Google Earth Engine (GEE). The language we will use is JavaScript. JavaScript has been around for a number of years and is used extensively on many websites. A companion appendix will include the same chapter but written for Python. Once you’ve gained a half-decent understanding of Java, it’s a very short step to learn Python. JavaScript is quite approachable and is a good introduction to scripting. Though there are many examples of functions, these are fine-tuned and understandable. They’ll also contain an explanation of what each function accomplishes.