GeTeach.com had a little spring cleaning this past week. The CIA World Factbook, along with UN’s Human Development Index, data was updated. As always, this biggest change looks to be Net Migration for Syria (Human Geography -> Demographics). Five years ago, there was a large negative flow out of Syria; now there is a relatively large inflow.
There are now over 190 map layers in geteach.com. New layers include percentage of Improved Sanitation (Human Geography -> Society), percent of population working in Agriculture/Mining, Industry, and Service (Human Geography -> Economy), and updated Population Density map (Human Geography -> Population Density), and Median Age (Human Geography -> Demographics).
In addition to new data, most of the thematic maps have new color gradients. Therefore, the maps, along with the legends, should be easier to process with new, more “modern”, colors.
The most immediate impact on my classes will be the addition of population pyramids located with Median Age, Total Dependency Ratio, Youth Dependency Ratio, and Elderly Dependency Ratio within the Demographic dataset.
These 2018 population pyramids are being served from a CIA Factbook host, so hopefully the agency does not change there urls, but having population pyramids in the site is a dream come true for my own teaching and learning; considering much of the course I teach is based on the unequal distribution of goods, services, and people across Earth’s service.
Another change worth mentioning is the inclusion of a small source/credit tag under legends. Geteach.com has always had a source/credit in the description box associated with each layer, but I was never comfortable with users have to click the “I” icon at the top right of each canvas to see the source of the map or data.
There are also numerous spacing changes with the styling. I doubt anyone will notice the 3-pixel margin shifts, but as a self-described pixel snob these items were truly bugging me. It is similar to painting a house or bedroom. The painter knows all their mistakes; even though it is never noticeable to any guest.
Well back to my real job…I hope teachers and students continue to enjoy at least one of the over 18,000 correlations; developing a deeper understanding of people’s relationships with their world and each other.
If you are new to geteach.com, here is a four-minute overview video of many of the functions already built into the site.
“Free site dedicated to help teachers educate and engage students using Google Geo Tools”
The above has been my mission statement for about ten years now. I should probably change ‘site’ to ‘sites’, but will worry about that later. As I am finally getting around to backing up some old project files, I noticed two things. One, my files are an absolute mess. Two, I have used a lot of Google Geo Tools over this decade; primarily oscillating between Maps API, Google Earth, and more recently Earth Engine. A friend once asked if I could put everything in one place. Looking at my files today suggest this will be highly unlikely. I try to use this blog to showcase work I think other students and teachers will be interested in. That stated, I don’t have an index of post for Google’s Geo Tools. Therefore, below are my favorite posts and projects organized around Google Geo Tools.
The one that started it all. As some people know, I am a big fan of kml and Google Earth; often calling it my gateway technology. With the web version of Google Earth, the future of this technology remains as current today as it was a decade ago.
Homage to Maps Engine/Maps Gallery: Many people don’t remember that Google had an amazing curated library of datasets that could be imported into geteach.com or opened within the gallery. That is before Google Deprecated the cool stuff. Some of the technology is still used with My Maps and I think Google Earth’s content creation. Those asset/map IDs look familiar;).
Google Earth Engine
Earth Engine took awhile to grow on me. Mainly because I kept having to recreate so much with the combination of deprecating and new technologies. That, and I have a day job teaching high school. However, over the past year I’ve taken a couple of weekends to create a few projects.
It looks like Google Earth Web has stopped supporting onclick events. Therefore the code snippets from the videos have changed to utilize event listeners. After some thought, I am not going to recreate vs code extension. This GitHub repository is where all the latest html files reside.
I was super excited when the Google Earth team launched content creation tool for Google Earth on Web. Mainly because these tools allow students and teachers an easy way to explore, create, and share their stories; their knowledge. I was equally excited the Earth team created a platform that allowed for custom HTML within these creation tools. With custom HTML, users can create narrated tours, quizzes, video stories, timing animations, etc. However, custom HTML adds complexity which requires a little extra know-how.
On occasion I get asked to create tutorials on how I create some of these special HTML Earth projects like quizzes. I am hesitant to create these for several reasons. First, I am a high school social studies teacher and not a developer. Yes, I have created some cool (my subjective opinion) Google Earth projects and have a successful Google Maps API website, but that is just me goofing off while attempting to find ways to engage my students. Second, I have been wrestling with how to meet the needs of the greatest number of people. The classroom gives educators and learners the space to cycle through feedback loops; a learning flow. This format does not allow for this immediate and meaningful feedback.
With these in mind, I came up with this tutorial blog/video series for creating custom HTML Google Earth projects.
The challenge: Create a three question Google Earth Quiz; choosing Google Earth Quizzes for this series because a number of people have asked.
Enjoy creating and feel free to share. Please let me know if you would like more tutorials on custom HTML for Google Earth on Web. You can find me on twitter @geteach.
Part I Setting Up a Coding Environment
For part I, we will create a coding environment that matches the instructional videos. If you already have a text editor you like (ie. Notepad++ or BBEdit) you will be fine. My assumption is that you already know a little about coding, so you will be able to follow along.
It has been a crazy couple of weeks, months, years! From my first glance at Google Earth for web to the present day, the same three ideas have circulated; explore, create, share. I am sure that I heard those in some chat at one time; or heard a version of them, but these ideas have percolated into my current framing of Google Earth. With the initial release of Google Earth for web, several years ago, most users could only explore. Technically speaking, people could create and share with the web version from the start, but with the November 20, 2019 launch of creation tools it is now easy for everyone to explore, create, and share.
While Google Earth project templates allow for compelling stories with Google’s rich imagery in combination with media (images, YouTube) and text, using the “Switch to HTML” option in the info box might be a glimpse into the potential of this storytelling platform. It is with these two perspectives, one being an effective and easy entry point the other being a stretch, I share these early explorations and creations.
Most of the ideas for these creations come from my news feeds. Basically, I read a story and think that would work better on Google Earth.
Last October (2018) I was speaking with a Google Earth
Engineer. We were discussing an array of Geo technologies used in the classroom
from ESRI’s ArcGIS to QGIS to My Maps and Google Earth. Somehow, we got on the
topic of Google Earth Engine and the engineer suggested that there were enough
demos out in the wild that I should be able to hack something together.
Therefore, during the winter break I put together my first Google Earth Engine
What is Google Earth Engine?
First, and most confusing, is that Google Earth Engine is not Google Earth. Most educator’s experience with an Earth Engine app is Google’s Timelapse. Timelapse is super cool! Think of it like this: Imagine you took a selfie of yourself every day for a year. Then have a machine, or a lot of machines in my case, analyze each pixel in every image for the best and clearest pixel for that location. Then create a mosaic of with the best pixels of you. No sleepy eyes, weird smiles, bad hair, scrunched up face etc. This is what Google Timelapse does for the earth. A picture-perfect world with no clouds, haze, smoke, shadows etc. The cool thing is that Google has compiled this, plus more, datasets and allows users to create apps using varying sensors.
Embedded Google Timelapse Shenzhen, Guangdong, China
The ‘Experimental’ product – https://geteach.com/climateEarthEngine One of the datasets Google has made available via Earth Engine is TerraClimate, a monlthly climate database for terrestrial surfaces. http://www.climatologylab.org/terraclimate.html . The temporal range of this dataset is from January 1958 to ‘Present’. That is 60 years of climate data! While there are several data series (bands) in this dataset to map, I chose to map monthly mean max temperature and precipitation accumulation. Like geteach.com, the project got a bit out of hand.
First curiosity – How do you work this thing?
Second curiosity – Can there be a way to easily flip through 60 years of maps?
Short answer, yes…add a dropdown menu option.
Third curiosity – Can I add legends?
Fourth curiosity – Need an opacity slider…wonder if there is one built in because the Maps API can do it?
Fifth curiosity – Wouldn’t it be cool to add a line graph for monthly temperature and bar graph for precipitation for almost any land surface on Earth?
Hell Yes! Plus watch these!
Looking at charts and getting data (**No need to calculate scale anymore*)
A little math and spreadsheet lesson (*No need to calculate scale anymore*)
Sixth curiosity – It would be cool to compare strong El Nino and La Nina precipitation patterns. Therefore, they needed to be labeled in the dropdown menu.
Seventh curiosity – Now that I see these El Nino/La Nina patterns, there should be some elevation data too. Check….Thankfully, Earth Engine also has DEM data from the USGS.
Lastly, how to share? Earth Engine has a built in create/share app function. It uses Google Cloud Platform (GCP). Thankfully I use GCP for geteach.com, so setup was easy.
It took a couple, maybe four, days to learn and create.
As I always say, I code like a five-year-old, but here is 60 years of monthly
temperature and precipitation data. Plus elevation.
Challenges | Issues
1. Mashing together the Google Maps API with Google Charts is not easy. I wish I had more experience. For example, the temperature’s scale is 0.1 so the viewer must move the decimal over. Would prefer to calculate the math within the chart api. I am sure there is a way. I just don’t know it…yet. Figured it out!
2. When app is in an Iframe of a page the ‘greedy’ mouse
wheel zoom breaks. Therefore, users have to hold ‘ctrl’ wheel scroll to zoom in
3. The exported app is not smarty phone friendly.
4. Lastly, My grandfather used to always say how he, “was one stripped screw from be a mechanic.” My version is that I am one out of scope var from being a web designer. I ended up coding everything in notepad++ and copy/pasting into the code editor. Let’s just say my eyes are wiser than they used to be?