Chernobyl Remembrance Day (114/365)

I remember Chernobyl. It was terrifying, because watching the news, no one in the US seemed to know what was going on over in the Soviet Union. And Ronald Reagan seemed a bit senile at the time.

As a kid that was scary. Now that I’ve grown up, I realize it’s true: no one, in any political institution from the household to the United Nations really has any freaking clue of what’s going on. And acceptable levels of senility apparently have an appreciating scale among US presidents.

I was excited to make a map about Chernobyl until I discovered an an absolutely stellar atlas on the Chernobyl disaster done by Harvard University. So there was no sense creating an inferior product in 30 minutes to compete with that. Seriously, check out their work here. Kudos and wonderful work.

But… always the devil’s advocate, there is a major irony I still don’t understand in many of my friends’ and family members’ contemporary views on nuclear power – which are almost universally anti-nuclear. These fears are not data based. (And that’s okay. I still love the Minnesota Twins baseball team, even though all the data says I should have given up on them in 2001.) But for those that say they are into rational, data-based decision-making, particularly about the environment, I feel like nuclear gets short shrift.

But I digress. Nuclear power is not as popular as other sustainable technologies, but… Though the disasters like Chernobyl and Fukishima were certainly very real to those affected, they pale in comparison to the energy disaster that continues to kill tens of thousands – indeed, potentially hundreds of thousands – around the world every year. Coal-powered energy may be killing you or your neighbors right now, depending on where you live. (Radon too but that’s a map for Celebrate Radon Day, I imagine.)

That’s right: coal kills magnitudes more than other energy types, particularly nuclear. How much more. That’s what I try to show you in today’s map. πŸ™‚


View Map Here

Prompt Used in WebMapGPT

# Intent
Chernobyl Remembrance Day is coming up soon. I would like to release a map on that day showing just how deadly coal is and continues to be by comparison.

The map should be antagonistic in nature – anti-coal power and subtly pro-nuclear power.

# Design
You may use devise a design plan that requires me to design and include PNGs or SVGs as icons, symbols, or embedded images. Just let me know.

Continue reading

World Book and Copyright Day (113/365)

Today is World Book and Copyright Day according to UNESCO.

I have mixed feelings about copyright. (Books are alright.)

The way I see it, copyright is simply the commodification of reason for the benefit of individuals over the common good.

Personally, I’m hopeful that LLMs (and a new world hegemony after the US that gets to reshape the capitalist system however it sees fit) completely destroy trademark and copyright law as they exist today. But I realize I’m in the minority there.

I have been amused by all of my friends and colleagues, mostly academics and artists, that have suddenly (and staunchly) started barking about how LLMs don’t respect copyright laws and therefore are a conspiracy of some sort. These conversations are mostly found in left-leaning social media echo chambers and on LinkedIn. “LLMs are built on stolen copyrighted material,” I keep hearing.

My question: what isn’t? Seriously, what story, song, research, idea… what isn’t built on others’ ideas? And why are so many of my open-source coding and artist friends, all of whom were borderline socialist if not anarchist until recently, suddenly harking on about copyright laws they once wantonly boasted about ignoring and stealing from for years. (Hell, tradingΒ  pirated ebooks among grad students at UW-Madison was a right of passage, as I recall observing, and let’s be honest, pirating movies and music is even more prevalent.)

But the absurdity of any semi-leftist academic or artist saying LLMs are bad because of they use stolen copyrighted goods are insane to me for two less anecdotal reasons. First, academics and artists, with few exceptions, are the very ones who have historically been absolutely screwed by copyright law. Academics don’t get paid for their writing directly. Then, they submit and have their articles reviewed by other unpaid reviewers. Then a commercial publisher (almost always) publishes your article and secures copyright and puts your work behind a copyrighted paywall with outrageous access fees. As a courtesy, and using the time-tested technique of guilt, they even get academics to pay thousands of euros and dollars to the publisher to allow people to access their unpaid written work for free. That’s what copyright gets you. It sucks. It’s horrible for sharing information and knowledge. And it rarely benefits the actual creators of content. This is even more the case for academics and frequently the case for artists – just ask Prince. (Oh wait, you can’t, because he’s both reclusive and very much dead. But you can read about it here.)

Second, I still haven’t had anyone explain to me how feeding books to an LLM agent so you and others can ask questions about what it has consumed later is different than taking notes from a book and storing them for personal recall later. Or reading a book and not remembering where you learned something when you recall a fact later and parrot it off as your own. Yes, machines are now far superior at information recall and parroting, but it’s not really different from you reading a book (pirated or not). Every book you check out and read from the library results in stolen copyright assuming you aren’t citing every sentence you utter. Just saying… your entire life is based off of consuming copyrighted materials, embedding them in your brain, and regurgitating the content as new information. Until someone can actually prove otherwise, I side with the argument that humans are stochastic parrots just like the machines we have created.

So before blindly joining (or liking) the chorus against LLMs based on stolen copyright – and there are plenty of other real reasons to be concerned about LLMs, e.g., the environmental impact and the fact that it’s going to replace a lot of us in the labour force – please do take a moment to reflect on the fact that copyright and trademark laws are not a logical reason for people. It’s well argued that intellectual property laws actually hamper the spread of useful human information, knowledge production, and are a blight on the already disenfranchised of the world. And I would argue true scientists want to spread knowledge and useful information to the masses, not lock it in ivory towers. (I highly recommend the book “The Crime of Reason” to see a wicked takedown of intellectual property laws.)

Alas, these are just my rambling thoughts. I’m but an aging dinosaur sitting in a freezing Minnesota garage with a map due tomorrow. So while I wait the four minutes for my ChatGPT agent to pump a map out, I thought I figured I would riff against copyright law in this blog before posting the result.

Alas, it’s been 10 minutes and it’s done. I just opened it for the first time and, darn, if this isn’t an epic complement to my rant. πŸ™‚

Enjoy todays’ map celebrating World Book and Copyright Day!


View the map here

Prompt Used (WebMapGPT ~6 minutes)

# Intention
I would like to make a map for international copyright day. In order to do so, I will need you to find data for me. The goal is to show a qualitative and categorical map about the stringency of copyright laws country-by-country.

Continue reading

Happy Banana Day (105/365)

I leave you this week, before handing off the next week to my colleague, on a happy but cautionary note.

Bananas feed much of the world’s population. Bananas are a staple crop. This map is designed to celebrate National Banana Day.

However, there is a menace haunting banana plantations. An airborne wilting disease that kills Cavendish Banana (i.e., the yellow banana that much of the Western world equates with banana today). It’s likely bound to wipe out the banana as we know it within 50 years.

Bananas are not fruit. They are herbs. They have no seeds. Thus, there is no way to save seeds in a vault, so to speak, to bring the species back in the future. We already lost the world’s favorite species of yellow banana many decades ago. Baby boomers may recall the Gross Michel yellow banana, which was the banana that predominated in the west until it went extinct after World War II. It no longer exists; though, its flavor is often what is mimicked and still considered the true banana flavor in candies. It was richer – I’ve been told – and creamier. It was replaced by the similar looking Cavendish banana.

But… there is no similar-looking or tasting yellow banana to replace the Cavendish when the wilting disease, presumably, wipes them all out. (For an interesting read on the topic, check out Banana by Dan Koeppel. High recommend!)

So enjoy your yellow bananas now so you can tell future generations what they are missing out on.

This map shows banana production in millions of tons by country over the past 60-some years. Each decade provides an annual average for the decade. As usual, you can map individual decades, change the classification schemes used, change the number of classes, and also highlight which countries of the world are already impacted by blight.

P.S. If you really like bananas, you can also view what a giant banana orbiting at 440 km above the Earth’s surface would look like here. This is one of the more compelling videos I’ve ever found on YouTube. I hope you enjoy it as well.

View Map Here

WebMapGPT Prompt

# Intent
A map showing banana production over the decades around the world to celebrate National Banana Day in the US.

Also, I want to raise awareness of Banana Wilting Disease and its potential impact on this important crop.

# Map Overview
Equal Earth projection using natural earth countries without lakes joined to the attached CSV file using the ISO3 country abbreviation column.

Remove Antarctica. Ensure the world map stretches to fill the screen left-to-right, even if the entire world is not visible at once.

## Mobile Map Guardrails
On mobile devices, including iPads, requires that the device be tilted to landscape mode to view and interact with the map.

# Attribution Modal
The attribution modal must be invisible when the map loads. It will be shown when a user clicks on the “i” (information button). When visible, it will close/become invisible as soon as a user taps or clicks anywhere outside of the modal. 10px border radius on the background.

## Attribution Modal Contents
Contents should include reference to Natural Earth datasets and prominently present the data sources below.

### Data sources
Original data from [Food and Agriculture Organization of the United Nations (2025)](https://www.fao.org/faostat/en/#data/QCL) with major processing by [Our World in Data](https://ourworldindata.org/grapher/banana-production?tab=table&overlay=download-data). More processing and decade averages created using [Spatial Dataset Doctor GPT](https://chatgpt.com/g/g-69433babe5648191b56993ba465bc3fe-spatial-dataset-doctor-alpha).

### Other Attributions
– Prompt Cartographer: [Ian Muehlenhaus](https://www.linkedin.com/in/ianmule)
– Tool: [WebMapGPT](https://www.webmapgpt.com)
– Campaign: [#365DaysOfMaps](https://mapdesign.icaci.org), Map Design Commission of the International Cartographic Association
– APIs used

The map should be a choropleth map showing total percent change in banana production between 1960s Annual Average and 2020s Annual average. Exclude from the choropleth coloration any countries that have no data in the 1960s and only 0s in 2010s and/or in the 2020s column.

Show the choropleth with a light yellow to dark unripe banana green color ramp. Countries without banana production or that have been excluded should be shown in a banana brown color with banana yellow boundaries. Countris with yellow choropleth fills should have banana green boundaries, and those with green fills banana yellow outlines.

# Info Window
When the user hovers or clicks on a country show a pop-up window (without arrow pointers) with a light, banana yellow background and dark green text with the following info. No outline. The pop-up should have rounded corners.

Include the following information in the popup:
– Country Name
– 2010s Average Rank (highest average is ranked #1)
– Decade Average Annual production as a table for each decade in the dataset (i.e., 1960s – 2020s).
– For countries on the provided Banana Wilting Disease list, please include at the bottom, in dark red print, a warning with a red exclamation mark at the start to catch attention or similar symbol, that the country is exposed to the {wilting_disease_types}, threatening their banana production.

# Title
Title the map like a journalist might across the top, left-aligned: “Global Banana Production”
Subtitle: “Percent change in average annual production 1960s-2020s and exposure to Wilting Disease”

# Hamburger Icon
In the upper right, include a hamburger button that has the following options:
– Revise Visualization
– Attribution

Clicking the attribution button will open the attribution/sources modal discussed above.
Clicking Revise Visualization will open a different modal explained below

# Visualization modal
– In the visualization modal, stylishly include an option to change the classification scheme, number of classes, and fields being mapped on the map.

## Allow users to do the following via interaction
### 1. Change the classification scheme between Natural Breaks (default), Equal Interval, Standard Deviation, Quantiles, Arithmetic, or Unclassed classifications.
### 2. Change the number of classes. Default is 5. May change it from 3-7 classes. A quaint slider would be ideal but I leave it to you to design. Disable this when the “unclassed” scheme is selected, obviously.
### 3. Which field to map
Default map is percent change in average annual tonnage between 1960s and 2020s.
The user is allowed to show average annual production for any decade of their choice. Provide in a dropdown list.

When the field being mapped changes, update the map accordingly maintaining the currently selected classification scheme and number of classes.

## Disease exposure.
Please provide a list of the different Wilting Disease categories (as collected off of the attached screen capture of a map above). Above the list have a title similar to “Wilting Disease Types” and underneath that in fine print, filter countries based on exposure.

Allow the user to multiselect countries based on whether or not they are exposed to any of the different wilting disease categories. Make those not exposed, including those with no production, 50% transparent. If none of the diseases are selected, show all countries as normal.

## Closing Modal
Ensure that the modal can be closed or disappears when the user clicks outside of it.
Ensure this modal starts closed when the map loads.

Attachments:
– CSV Banana Dataset
– Map image (with list) of different banana wilting disease ranges. Please use this to classify cities on the map for the country filters. You may peruse the internet to finalize the categories for these if interpreting the map proves too difficult. Thanks!

Happy Moment of Laughter Day (104/365)

Happy National Moment of Laughter Day, America.

You certainly can use it. You’re being led by a (allegedly) senile narcissist and going through hegemonic decline at a steady clip. It’s rough going – both here and for the rest of the world.

Laughter doesn’t cure anything, but it does kill the pain of the uncontrollable.

Though simple to create, I’m quite happy with how this map came out. I actually quite like the symbology and the vibe I get looking at it – a Hallmark condolence card for a traumatized nation.

Originally, I was trying to get Google Gemini to create a laugh track for an animated map of laughter, but my endeavor failed miserably. I am sharing the results of that endeavor, because in many ways, the results are as maniacal sounding as the US actually feels right now – a horror show, in my opinion.

United we laugh… and hopefully, live to pick up the pieces.Β 

Google Gemini Image Creator Prompt

Please draw an artistic map of the United States in colored pencil where every state is represented by the profile of a laughing, smiling, friendly looking person. Make sure the people included are diverse in age, race, and a good mix of female and males. All pictures should be of people laughing and coming out of where the state borders would be, with some overlap of one another, etc. Only include the 48 contiguous states, please. The image is meant to be used to celebrate the Moment of Laughter Day. No text should be included on the map except at the top somewhere in handwriting “Enjoy a Moment of Laughter”.

 


And creepy Google Gemini laugh-track musical results… too scary to use.

Link to several of them… The first one gets very weird about halfway through. Like a Terry Gilliam film without the film.

https://gemini.google.com/share/0381d2943a29

P.S. I swear I hear Jabba the Hutt’s little laughing monster sidekick in one of these.

 

 

 

Happy Scrabble Day (103/365)

Happy National Scrabble Day!

I always stunk at Scrabble. It didn’t help that my mother was trained as an English teacher. She loved spelling, definitions, grammar — all of it — and took no mercy on her children, regardless of our age. (For the record, she still skunks me at Bananagrams too.)

But I do enjoy the game. In fact, I love all games! I play Euro boardgames, nerdy deck-building card games, and tactical war games with my local gaming friends several week nights or weekend days most weeks.

And as an analog game addict, I was thrilled to see a game with its very own day — that wasn’t Monopoly. (Curses!)

I like designing games too, in my spare time, so I thought… let’s combine Scrabble with Geography for this map.

Moreover, it’s fun to see where people visit our prompt maps from, so I thought… why not let people record their scores and see how they do compared to others? So I added a little database so you can store your high score like you’re playing Pole Position at an arcade on the Italian Riviera in 1983! (That’s what my brother spent his summer doing. He was so proud having the highest score for kilometers around!)

## How to Play

A country name will be randomly selected. You will be shown the letters required to spell it.

Simply drag the letters to spell the country name. Once you’ve spelled it right, you’ll hear a little ding and be shown the next random country to spell. You earn points based on the real-life Scrabble value of the letters in the country name.

View Map Here / Play Game Here

You get three passes. (I admit, there are some questionable ones in there. I blame Natural Earth data for those… “StGeorge and Isl”?) Save those passes for when you really need them! πŸ™‚

After that, your score is frozen. You can keep playing if you want. Or you can record your score and see how you compare.

The countries fill in as you solve them and their point totals are added to a list you can see.

This works on mobile too. I tried it. It’s a little easier in some ways dragging letters on mobile. (Though, the map is not very big. You can zoom if you like.

Have fun! And play more games; they keep people young and may help prevent dementia.

Original Web Mapper GPT Prompt

# Intention
I would like to make a fun, puzzle map for International Scrabble Day on Monday.

For this map, I would like to have a world map where someone is shown a scrambled country name.

They need to unscramble the name by pulling and placing the letters in the correct order (some squares at the bottom of the map where Antarctica would be. (I ask that you exclude Antarctica from the map for the interactive board area.)

Once a country is correctly spelled, it is automatically filled, and the points for that country (based on the Scrabble point values for the letters in the name just spelled) is added to a score board.

If a user completes the entire map, the map will be filled in with countries and they will be able to enter their first name, last name initial, and country of residence on a User Score board that is maintained on the server and shown when the user clicks a button that will be described later.

# Map Area

Please use natural earth countries without lakes boundary data. Equal Earth Projection. Remove Antarctica and islands smaller than 300 square kilometers.

## Map Interactivity

Allow the user to zoom in on the map up to five times full extent and pan the map. Do not allow the user to zoom out past the map’s full extent nor pan off the edge of the map.

## Map Coloring. The app background should be light gray with random, intermittent, and very light tiles and squares in pink and blue in the same style of a Scrabble board. Make it lighter than a scrabble board, though. Just game board light with light papery texture.

The countries should start off with light gray, semi-transparent (65% alpha) fills. The border outlines should be 100% alpha and the baby blue from the Scrabble board, full value and saturation (unlike the background blue).

## When a country name is spelled correctly
The country will fill with a wood-tile grain style fill (like the letter pieces in Scrabble.) Make sure they tile to fill without gaudy interruptions in the image in large countries like Canada and Russia, etc.

## Country click
When a user clicks on a country, nothing happens if the user has not yet filled in the name successfully or been offered an opportunity to fill in the name.

### Country name concluded
If the user already successfully spelled the name, the country is filled in with wood grain, and the user may click on the country and see the name of the country as well as its point value based on Scrabble letters. (You will have to look up the value of different Scrabble letter points in English and determine this when coding. Sorry, I’m not sure offhand.)

# The Scrabble Game
At the bottom of the map (where Antarctica would be) will be the game area.

You will randomly select one of the countries in the Natural Earth Dataset and provide a number of blank square spaces at the bottom center of the map that the user must fill in.

Additionally, you will provide all the letters required to fill in the spelling, one for each blank square at the bottom, scattered over the center of the world map at different, random angles between -45 to +45 angles from standard reading level so they are all right-side up but look truly dispersed on the board. Ensure that the letters are mixed and NOT in the correct order to spell the country name easily. (The game is figuring out what country name to spell.)

The user will drag each letter to a square and drop it. When dropped, it should be made to fit correctly (and at the correct angle). The user will spell the country name. The user may move letters that have already been dropped to other spaces (so they can correct misspellings). If another letters is already in that space, they will swap spaces. If a new letter is dropped onto a space that already has a letter in it, the originally placed letter will be displaced to just above the space it was in so the user can use it again in a different space.

Once a user spells a country’s name correctly, make a light ding noise (like a help desk bell sound) and randomly select another country from those remaining (i.e., that haven’t yet been played) and set up the new game board. Also, make sure the country that they just spelled fills in on the board as described above in the map section.

When the user spells the name correctly, automatically add the Scrabble point total to the scoreboard, which I will be mentioned in more detail later. Keep a sum.

The user will get “Three Passes.” Each pass is -50 points. However, when used, have the letters move and arrange themselves to fill in the spelling. Do the ding, flash “-50” on the screen briefly, and fill in the country. Subtract 50 points from the score. Negative scores are possible.

The pass button should be to the right of the empty spelling squares for each country. When the user hovers over the “Pass” button, tell them how many passes they have left. Once they have used all three passes, remove the button from all forthcoming spelling challenges and instead replace the button with a “Record My Score” button.

When the user clicks the “Record My Score” button, show a score-modal in the middle of the screen. The score-modal should be titled: “Join our leaderboard”. It should contain two fill-in input text boxes.

– Name/Alias: {they fill in an alias name. Ensure no derogatory, sexual, or vulgar words are allowed please}
– Country of Residence: {country where they live}

Add a save button.

Once saved, update the modal to show all saved scores with Alias, Country, and Total Score in table format (without borders) in descending order from highest score to lowest. Add a scroll bar if enough people record their score that you need to scroll down. Maintain this scoring database on the backend. (I have my own Ubuntu/Apache server, so if I need to do something on the backend to make this happen, I can.)

Make sure that the user can close out the save and high scores dual modal by click a close button “X” in the upper right.

# Title
Place the title in the upper left of the map, on a navbar header. Use a traditional Scrabble-title like font from Google Fonts.

Title = “International Scrabble Day!”

# Information
On the right side of the navbar header, have an “i” icon for information.

When the user clicks on the “i”, have a modal pop up with simple, straight-forward, and inviting directions on how to play the game.

At the top of the modal please place an obvious but not gaudy “High Scores” button and when clicked replace the text and info in the current modal with a table (styled the same as the high scores table above) showing Alias and Score for the Top 10 scores currently saved. There should be a small “X” button inside the scores text to get back to the information modal content.

At the bottom of the modal include styled hyperlinks mentioning “Created for free with Web Mapper GPT” with a link to the provenance file, and then some text to “ICA Map Design Commission” with a hyperlink to “https://mapdesign.icaci.org”. In the provenance put “Idea and design by Ian Muehlenhaus.”

# Mobile devices.
The following directions pertains to only handheld mobile devices:

– Please make this mobile device friendly by ensuring the user is in landscape mode for it to work.
– Have the title bar disappear after 8 seconds. In the lower left corner add a button to click that shows the title bar again, or hides it if it is showing. (A show/hide button, so to speak).
– Ensure the letters are large enough to click on and drag with a fat finger. πŸ™‚

Thank you.

Any questions before you begin? If not, proceed. If yes, stop and ask before concluding. Thanks!

Happy Drop Everything and Read (DEAR) Day! (102/365)

Happy drop everything and read day!

Beverly Cleary shaped millions of American children’s reading habits. She was a prolific author of children’s literature from the 1950s onward. Sadly, she passed away at 95 in 2021. However, her stories and books live on and are still widely read today — including by my kids when they were in grade school.

Her most famous character, arguably, was Ramona Quimby. (Ramona was a pest!) In those books, there was a reading group or initiative that Ramona took part in called: “Drop Everything and Read.”

The idea of celebrating Drop Everything and Read Day on Beverly Cleary’s birthday was born.

Though I went on a diatribe against capitalism and the death of writing careers two days ago in Friday’s post (Map 100 in this series), I want to assure you that I also enjoy reading and I do encourage young people to read. So this map is a mea culpa, in a way.

Each state shows the number one Google-searched children’s book and young adult fiction book in 2023 (I believe… the exact date should be in the pop-up window).

Each state is also colored based on the percent of the state population that is 0-18 years of age using US Census data.

Originally I was going to color the states with the appropriate book covers, but alas… darn copyright laws, make such free advertisements nearly impossible to pull off. Sorry! πŸ™‚

Happy Drop Everything and Read Day! And thank you for all the great stories and memories, Beverly Cleary!

View Map Here

 

Data Creation with Perplexity Pro Prompt

Can you create a simple state-based dataset of most popular children’s book state-by-state based on 95 percent group and also Fusion Academy’s Young Adult most popular books by state and combine them into a single dataset. Also, if possible create a separate field using the most recent Census population survey/estimate data 2023 or later for each state showing percent of total population aged 0-18 or ~5 to 18 years of age (wherever the closest census breakdown is, please).

This dataset will be used in a map to celebrate “Drop Everything and Read Day” on Beverly Cleary’s birthday. Thanks! (P.S. Please include a column with state abbreviations too.)

WebMapGPT Prompt

Hi there. Sunday is Beverly Clearly Day or Drop Everything and Read Day (DERD).

To celebrate, I’m creating a simple US state map that displays either the top searched for children’s book and young adult book by state.

# Intent
To highlight young adult and children’s literature to celebrate Beverly Cleary’s contribution to reading.

# Map
Please use a US state base map in equal area albers or similar projection with Alaska and Hawaii placed in the lower left.

Each state should be filled with the book cover of the book represented by the data. States should have white outlines.

I’m not sure where images of book covers are on the internet, but I imagine Wikipedia probably has some good images, perhaps Amazon, or Google Books?

When a user clicks on a state, a pop up should appear (without an arrow) with the following information laid out similarly:

<div>
<h3>{state} ({state_abbr})</h3>
<p><strong>Children’s pick:</strong> {children_book_95percentgroup}<br>
<strong>YA pick:</strong> {ya_book_fusionacademy}<br>
<strong>Population under 18:</strong> {pct_under_18}%</p>
<p>Compiled for Drop Everything and Read Day using state-level book-interest studies and ACS 2023 Census profile data. We love you Ramona Quimby!!! We miss you Beverly Cleary.</p>
</div>

There should be a toggle switch in the upper-right of the map to switch between Children’s / Young Adult.

When toggled, have the book covers change to the appropriate book cover for that book type in each state. You may tile book covers to fill each state.

Splash screen title at start that is open in a modal:

Title: Happy Drop Everything and Read Day
Subtitle (60% font size of title): Top Children’s and Young Adult Book Google Searches by State

Beneath, a brief bit about “DEAR” Day and Beverly Cleary.

Sources for the data spelled out.

Smaller and more subtle font:
List of tools used to make the map: APIs, Made with WebMapGPT (webmapgpt.com), Ian Muehlenhaus (linkedin.com/in/ianmule), Map Design Commission of the ICA (mapdesign.icaci.org), and with links to the websites where applicable and Ian’s LinkedIn profile are. Provenance link.

I’m attaching an EXCEL dataset and some data source and provenance information. Thanks!

 

Happy National Cheese Fondue Day! (101/365)

I knew going into this that this map was going to disgust me. But I couldn’t resist. Besides, it’s a Saturday, so hopefully it doesn’t get too many looks.

I like fondue well enough, but how do you make a cheese fondue map without it looking like… well… yeah.

Alas, here it is. I can only say that Monday’s Map (103/365) will more than make up for this. I’m hooked on visiting that one right now, and I’m pretty sure others will be too. Until then… bon appΓ©tit!

View Map Conversation and Map Image on Google Gemini Here

The Prompt (Google Gemini – Image)

I would like to make a tasteful cheese fondue map for Cheese Fondue Day.

I would like to see a world map, with generalized elevation in a stereographic style projection (circular), layered in cheese fondue. The image should look like a print map and appear as though it is a photograph of cheese fondue dumped on elevation model paper map. Have waves and drips, etc.

 

Happy Encourage a Young Writer Day! (100/365)

We made it to 100! To celebrate, I thought I’d make a map showing that LLMs are not destroying white-collar, cerebral creative jobs on their own. Oh, no! The internet did a number on many of those first. In particular, on careers in writing and publishing.

To be up front: I adore writing. Nothing gives me the joy of parroting my way through explaining my own thoughts and emotions using words and syntax I’ve stolen throughout my lifetime of listening to people talk and reading the New Yorker. (This is why I empathize with LLMs; they are no more stochastic parrots than humans. We have no original linguistic thought or writing ourselves. Every word I write, I read or heard somewhere else, thousands of times, and I am parroting and placing these words in an order that seems logical and to make sense. It’s no different. It’s plagiarism.

All writing — LLM-based or now — is plagiarism. But plagiarism is only a crime in a capitalist world-economy that has commodified reasoning… copyright laws are literally the commodification of communicating free-will thought and reason — much as property laws are the commodification of geography.

What cracks me up is that LLMs are stripping the veneer off the shortcomings of the social (and economic) construction of copyright laws. Hmmm… maybe Marx was on to something? ! But I’ll leave that to the David Harveys of the world to bicker about in copyrighted academic publications.

Writing is also why I dig prompt cartography. Language is merely human code for engineering our own and others’ beliefs about the world and changing people’s behaviors. That’s all. It’s a programming language we use on ourselves. Viewed that way, it’s absolutely brilliant!

As a wayward teenager lost in Hungary in 1993/1994, reading English translations of Jozsef Attila and Orkeny Istvan in cafes while cutting class, I decided I would grow up to be a writer someday. It became my life’s goal. I even entered my undergraduate degree as an English Major.

And why not? The world was once full of writers. My family knew a bunch of them. My mother had a writing business at one point – Said Write, LLC. My second best man’s — meaning the best man at my second wedding in this case — dad was full-time poet! Imagine that!

The woman neighbor next door to us growing up was a journalist for the local newspaper. My parents were friends with a couple of full-time magazine writers. We knew the editor of Lake Superior Magazine, which was a full-time job back in the day… unbelievable!

And then it hit me… I don’t know anyone today who makes a living writing. We all have to write. And I know people who have written novels. I’ve written screenplays and non-fiction books, but I don’t know anyone who holds a career in writing. (And yes, I know there are still journalists. Just not nearly as many.)

Now… there was the big blog phase in the mid-2000s. But even blogs are no longer a major thing like they once were compared to podcasts and influencer videos. And what about all those newspapers and book publishers that got shutdown, merged, downsized, and sold off? Including Rand McNally Atlas even being bought and weeded out by a Hedge Fund… not even atlases are sacred?!?!) And what exactly doesn’t Taylor & Francis Group not own in academic publishing, I ask, in all sincerity? (Aside from Springer – keep it real, Deutschland!)

I realize that many of my former colleagues in academia may be livid right now. They write. They have careers. True but… you don’t officially get paid for your writing. In fact, you often have to pay Taylor & Francis Group to ensure your writing can be read (i.e., to make it open to anyone outside of academia). Rather, you get paid to do research and report on your findings. Writing is one form of communicating your results. I would argue it’s probably less effective than a podcast or vlog, but writing still possesses a higher stature even if it goes largely… well, unread.

I digress again… it’s what I do best… particularly while freewriting!

So where was I, ah yes, encourage a young writer day…

I began thinking: my daughter loves writing. But how can I possibly encourage her to become a writer? (Similarly, my sister-in-law loves calligraphy. But I wouldn’t encourage her to become a calligrapher right now; she’s already struck out as a yoga instructor so…)

I simply can’t encourage any young person to pursue a career in writing. All I can do is encourage someone, like my daughter, to write for enjoyment — similar to how I don’t encourage her to become a professional videogame player, but to play Baulder’s Gate for enjoyment purposes.Β 

Encouraging young people to only write for enjoyment also happily removes a lot of the problems young people have with writing.

Writing for enjoyment means you don’t have to worry about what others think of your writing or following others’ prescribed notions of what constitutes writing versus what doesn’t. You can try new tools.

Not a gifted writer… or perhaps you have dyslexia like someone in my family does?

No worries! Spellcheck, word processing, or writing outlines of your ideas and feeding them to LLMs to spit out more clearly counts as writing. Because it is… writing is using tools to communicate your ideas in code that other humans (that share your natural language) can interpret and do with what they want. No human has ever written anything without technology.Β  No human has ever written anything without plagiarizing everything they’ve ever heard, read, or seen. LLMs are just the next technological step.

But I then remembered, and coming full circle, the death spiral of writing for a career started way before LLMs.

Video may have killed the radio star, but internet killed professional, career-based writing jobs with health insurance and benefits.

At least, that was my hypothesis, which I decided to explore in today’s map.

I went and downloaded US Census data to map the number of writers per square mile by county in the US in 1990 versus in 2023. I used the US Census’s Business something or other data, which changed a bit in classification scheme since 1990s but is roughly the same.

Again, I love writing. I encourage young people to write using whatever tools they want — pens, pencils, word processors, paint, or LLMs. (Lord knows, an LLM would have written this more clearly than I just did.)

I do not advise anyone assume they will be able to feed themselves making it their day job, though. More like a passion project similar to this 365 Days of Maps Campaign. Just for fun. Just to make people think. Just to poke some sleeping bears.

Happy Encourage Young Writers Day!

P.S. For those of you that think I’ve committed some sort of writing blasphemy… perhaps I have. But I promise Monday’s map makes up for this – it requires impeccable spelling! πŸ˜‰

View Map Here

Data compilation and cleaning:

Spatial Data Doctor GPT

Original Prompt Used in WebMapGPT

I would like to make a sad map for Friday’s National “Encourage a Young Writer Day”.

The map should use the two attached datasets, or a combination of them, to do the following:
Show the difference in the number of people employed in writing and publishing jobs between 1990 and 2023 by county in the US.

I have two geojson files. One shows different employee counts by type of writing/publishing employment, count of employers, as well as total payrolls in thousands of dollars in 1990 and the other shows total people employed and either payroll or count of employers in 2023.

Though they use slightly different categories (due to technological changes), the evidence is clear — there are fewer writing jobs.

Please come up with a map design of the United States that is equal area (with Alaska and Hawaii in the lower left) that does the following:

Shows total number of people employed in writing and publishing (regardless of field) in 1990). Also shows the total number of people employed in writing in 2023 by county. Also shows the change in count as a percent between the two years (using a purple (decrease) to green (increase) diverging color ramp. (You may have to add separate values within a year per county and then subtract the count differences between the two datasets per county to show change over time. Sorry about that. Feel free to clean or create a new geojson, etc.)

For counties that are missing data from both years, please still include the boundaries but use a light gray fill with no boundary outline.

Once the data is prepped, I provide some guidelines for the map design below beyond the projection, which was discussed above.

# Intent
To show how bleak the future of writing looks, not to mention LLMs replacing a lot of the human writing grunt work.

# Communicative Goal
– Tongue-in-Cheek Satire for Young Writers’ Day
– Informative about just how much the internet changed the writing and publishing landscape and hinting at AI changing it

# Interactive panel
Should allow users to change which map they are looking at, as well as the number of classes in the dataset and visualization technique.

## Three Mapped Datasets:
1. 1990 Writers/Publishers
2. 2023 Writers/Publishers
3. Percent change between the two

### For datasets 1 and 2
Allow the user to change the classification scheme. Default scheme is natural breaks, six classes.
– User may choose among: natural breaks (default), equal interval, arithmetic, standard deviation, unclassed.

User may select between 4 and 8 classes on a slider for each classification scheme, except for unclassed, in which case the slider will made inactive and when the user hovers over it a tool tip will note: “Change classification to select number of classes.”

### For dataset 3
Default classification scheme is diverging in arithmetic chunks for 0% change. User may select number of classes. They may also select unclassed diverging from 0%. Color scheme is the same as above, except the middle color is white. Purple is heavier negative percent and green is heavier positive percent growth.

# Map Layout
Interactive panel should be in lower right-hand corner of hte map with some padding from edge of window. Title should be: “Writing Opportunities”

When the user clicks on the panel, it should minimize. When they click on it again, it should open again. When the map loads, the panel should be open. A legend should be included in the panel.

The title should be in a header across the top, left-aligned. “Never tell a writer the odds…” in a handwritten display font, preferably a bit modern cursive. (Use Google fonts or similar open font.)

On the right of the header, right-aligned wiht some margins from the right window border, have an small “i” button. When the user clicks that a modal opens with sources and information, as well as a link to www.webmapgpt.com and attribution information for the API. Please note the datasets came from the Census: County Business Patterns and were filtered to writing and publishing jobs.

# Styling
– Popups should be white with light drop shadown and have an arrow to the county.
– All divs with borders or fills should have border-radius values of 10 or less.
– Colors… let’s go for faded typewriter ribbon style and graphite pencil.
– Fonts: let’s go with typewriter fonts in the pop-up windows and in the legend, etc. Title will be handwritten as described above.

Colors: Purple = decline/low, Green = positive/growth (try to find a color ramp that mimics Color Brewer but isn’t ungodly bright.

County outlines should look like they were drawn in pencil with light line thickness variation and grayness density.

Background of HTML page should be lined paper with a light texture and very light blue lines.


Once it concluded, I realized my error in the original instructions and added a second prompt to recreate the choropleth maps to show derived values based on number of writers per square mile.

Happy Winston Churchill Day (99/365)

Winston Churchill… the man, the myth, the cigars… Today is officially Winston Churchill Day.

Here is a story map of his life to celebrate. Single prompt. If I were to revise, I would remove the lines, but alas, I’m excited about other maps more than this one, so I’m moving on.

View Map Here

Original Web Mapper GPT Prompt

# Intent
Create a biographical, interactive map about Winston Churchill for Winston Churchill Day. The map component should look early twentieth-century antique (font selection, yellowish textured paper vibe, and muted, matte color print style).

The goal will be to walk through Winston Churchill’s life, both the highs and lows, beginning with his birth, boarding school life, and then political and military adventures, and culminating with his death.

We don’t need all of the details, just the biggest highlights as found on https://en.wikipedia.org/wiki/Winston_Churchill and/or in his autobiography.

Please include at least 15-25 highlights / major moments from his life and career.

# Audience
Random internet people interested in Winston Churchill, cartographers interested in prompt cartography, and people that see the link when it’s shared in a post on LinkedIn.

# Map Style
The maps should be tileset based – Web Mercator is fine. Please find an open and free to use tileset that looks antiquarian or World War II map style. (I don’t care if it’s an Esri base map, CARTO, Stamen, Mapbox, or even made by the PLA, as long as it looks antique and is in English.) If you must, you may add some masking, etc., to give the map text and muted colors.

The user must not be allowed to zoom out to space. In fact, the panning bounds should be limited to no more than 10 degrees latitude or longitude beyond the dataset extent and the user must not be allowed to zoom out past the total data extent. The map may zoom in as far as necessary up to a metropolitan area zoom level (not sure what level that is exactly but limit it around there).

# Locate the Data
Each places should be located on the map as a point and color coded (in period-appropriate colors by category).

# Story Pane
The map should have a floating pane that is draggable (by clicking and dragging on the header) and movable. When the map loads, it should start in the lower right, with modern margins (e.g., 5-10px) from the edges of the browser window.

The title of the pane should be “Churchill’s Journey” and the first event (probably his birth I’m guessing, should be loaded and zoomed in on with the map to start.

If there is a picture available, load the image link URL into the panel. If it’s landscape, have it at the top of the panel. If it’s portrait mode, have it fill 2/3s of the panel’s width or less and ensure the image isn’t larger than 150px in height (constrain width based on that).

Below, place Event Title followed by the Year as a title.
Below that the category using the same font color as the categorical point symbol.
Then, the place and country (when available).
Below that the description.
Below that the URL to any follow-up sources.
Below that a
In the panel, if there is a picture, it should be

At the bottom, a small button on the left that says “Previous” and when clicked goes to the event preceding the current one, and on the right a button that says “Next” that goes to the next event.

In this way, the user can go through Churchill’s entire life one event at a time.

# Title in the upper left

Come up with some stoic and concise title for a map about Winston Churchill celebrating him.

Use a Serif font from Google fonts that works for early Twentieth Century.

# Filters
In the lower left have a minimized panel floating with the same margins as the story panel on the lower right, but in this case from the left and bottom browser windows. (Symmetrical margin spacing is what I’m saying.)

It should be labeled “Filter by Category”. When clicked, it should open and show the different event categories in alphabetical order and in the color of their symbology. They are multi-selectable and all are selected by default.

When only one is selected, only that category’s events are shown on the map and the panel updates to the closest event from where it was currently in the order of viewing. If more than one is selected, all events from both are shown and the panel updates simiarly. If none are selected, all events are shown by default. Make it intuitive and logical.

Beneath the filters put a button called “Sources”. This should open a modal with APIs used, Web Mapper GPT hyperlink, data source(s) (i.e., Wikipedia), and any other important info — i.e., a link to a provenance.json.

Happy Theatre Day! (86/365)

Happy Theatre (or Theater?) Day!

Today’s map is a bit weird. I decided to ask Perplexity to create a dataset of renowned playwrights from different countries that are perhaps not famous but have done work that has received awards or is known internationally.

I get tired of English, so I asked the playwright’s description in their preferred or native language. So you won’t be able to read about all of them necessarily, but you’ll be able to see their names and famous plays in English — if you speak English.

Anyway, the map is kind of simple aside from the fact that the countries are filled with their playwright’s bios and may languages are represented herein.

This one took a brief follow-up prompt because originally the bios weren’t contained/masked by the country boundaries and running amok. A couple of follow-up lines straightened things out and I’m off working on tomorrow’s map which… is so much fun! πŸ™‚

Also, Perplexity ran out of gas when creating the dataset, and I didn’t really care that much, but you’ll notice a few larger populated countries missing from the final map… i.e., France and the US.

View Map Here

Tools Used

  • Perplexity: data collection
  • Web Mapper: map creation

Web Mapper Prompt

Hi, I would like to make a map for Theater Day on Friday, May 27. I have collected a JSON dataset of famous playwrights from around the world. Each of their descrdiptions is in their native language, for fun. I am wondering if you can do the following: Please create an Equal Earth projection map with the title “All the world is a stage…” in the upper-left-hand section. Then, as a subtitle: “Highly regarded playwrights from around the world.” — Using the provide JSON dataset, please join it to a countries geometry dataset. Use medium gray boundaries for the countries. White background with the playwright’s description (in their native language) filling the entire country at a random angle between 45 degrees and 67 degrees (where zero degrees is at the top and 90 degrees is standard left-to-right horizontal text). The text should be light gray and turn to bright crimson red when the user hovers over a country. For countries without playwright listed, or incomplete data, simply create a country with a very light gray fill. No base map needed. Just the countries. When a user selects a country, have a beautiful, minimalist popup appear with the details about the Playwright and all the information, with a scroll bar. Have hte Playwright’s name as the title. Use 85% black for the text. White background, no transparency. A very minimalist map with beautiful text-based fill from their bio, descriptions, etc. If you have any questions or run into any issues, please let me know. On mobile devices make sure the map fills the window and is centered vertically. Also make sure it can only be viewed in landscape mode. Allow zoom up to 5 times the full extent. Do not let people pan outside of hte map or zoom out into space. On mobile make the title a header across the top, minimal. On the desktop version, have it float over the map in the lower lefthand corner, quite large. Add an info button next to the title. When a user clicks it, a modal opens with the a source showing the APIs used, link to a provenance file, and a link to the JSON file used to create this map. Give credit to Web Mapper GPT and Ian Muehlenhaus. Thanks.